Python 2.7与数据库的连接技巧 (python 2.7连接数据库)
作为一种广泛应用于科学计算、、Web开发等领域的编程语言,Python自然也牵涉到与数据库的交互。Python 2.7是一个仍然广泛使用的版本,本文将介绍如何使用Python 2.7连接各种数据库,并进行相关操作的技巧。
1.连接MySQL
MySQL是一款流行的开源关系型数据库,Python中有一个标准的MySQL数据库驱动程序——mysql-python。首先需要安装这个驱动程序,可以通过pip安装:
pip install mysql-python
安装完成之后,可以从Python中连接MySQL,并进行相关操作。使用以下代码可以进行连接:
import MySQLdb
#打开数据库连接
db = MySQLdb.connect(“localhost”,”testuser”,”test123″,”TESTDB” )
#使用cursor()方法获取操作游标
cursor = db.cursor()
#使用execute方法执行SQL语句
cursor.execute(“SELECT VERSION()”)
#使用 fetchone() 方法获取一条数据
data = cursor.fetchone()
print “Database version : %s ” % data
#关闭数据库连接
db.close()
在这个例子中,我们首先使用MySQLdb.connect()方法连接MySQL数据库。在这个方法中,我们需要提供 MySQL 服务器地址、用户名、密码以及要使用的数据库名称。然后我们使用cursor()方法获取一个操作游标。
使用execute()方法来执行SQL语句。在这个例子中,我们执行了一个简单的SELECT语句获取MySQL版本信息。
我们使用fetchone()方法获取SELECT语句的执行结果,并将其打印输出到控制台。使用db.close()方法关闭数据库连接。
2.连接SQLite
SQLite是一个轻量级的嵌入式关系型数据库,适合用于一些小型项目。在Python中,使用sqlite3模块连接SQLite数据库。
连接SQLite数据库的过程与连接MySQL数据库大致相同,只需要将数据库驱动程序换为sqlite3,并提供数据库文件路径即可。
import sqlite3
#连接到SQLite数据库
conn = sqlite3.connect(‘test.db’)
#创建一个Cursor
cursor = conn.cursor()
#执行一条SQL语句,创建user表
cursor.execute(‘create table user (id varchar(20) primary key, name varchar(20))’)
#插入一条记录
cursor.execute(‘insert into user (id,name) values (\’1\’, \’Michael\’)’)
print cursor.rowcount
#关闭Cursor
cursor.close()
#提交事务
conn.commit()
#关闭连接
conn.close()
在这个例子中,我们首先使用sqlite3.connect()方法连接SQLite数据库,提供数据库文件路径即可。然后使用cursor()方法获取一个操作游标。
使用execute()方法来执行SQL语句。在这个例子中,我们执行了CREATE TABLE语句,创建一个名为user的表,并向其中插入一条记录。
我们关闭了Cursor,并提交了事务,关闭了连接。
3.连接MongoDB
MongoDB是一个非常流行的NoSQL数据库,Python中的pymongo驱动程序支持与MongoDB的交互。
在使用pymongo前,需要先安装这个驱动程序。
pip install pymongo
连接MongoDB的过程与连接MySQL和SQLite有所不同。在MongoDB中,需要指定主机和端口号,并通过用户名和密码进行认证。
import pymongo
#连接到MongoDB
client = pymongo.MongoClient(“mongodb://localhost:27017/”)
#指定要使用的数据库
mydb = client[“testdb”]
#指定要使用的
mycol = mydb[“users”]
#插入一条记录
mydict = { “name”: “John”, “address”: “Highway 37” }
x = mycol.insert_one(mydict)
print(x.inserted_id)
#查询记录并打印结果
for x in mycol.find():
print(x)
在这个例子中,我们首先使用pymongo.MongoClient()方法连接MongoDB,指定要使用的主机和端口号。然后指定要使用的数据库和。
使用insert_one()方法向中插入一条记录,并使用inserted_id属性获取插入记录的id。使用find()方法查询中所有记录,并将结果打印输出到控制台。
4.连接Oracle数据库
Oracle是一个企业级的关系型数据库系统,与Oracle数据库的交互需要使用cx_Oracle驱动程序。
在使用cx_Oracle前,需要先安装这个驱动程序。
pip install cx_Oracle
连接Oracle数据库的过程与连接MySQL和SQLite类似。
import cx_Oracle
#连接到Oracle数据库
conn = cx_Oracle.connect(‘testuser/test123@localhost:1521/orcl’)
#创建一个Cursor
cursor = conn.cursor()
#执行一条SQL语句,创建user表
cursor.execute(‘create table user (id varchar(20) primary key, name varchar(20))’)
#插入一条记录
cursor.execute(‘insert into user (id,name) values (\’1\’, \’Michael\’)’)
print cursor.rowcount
#关闭Cursor
cursor.close()
#提交事务
conn.commit()
#关闭连接
conn.close()
在这个例子中,我们首先使用cx_Oracle.connect()方法连接Oracle数据库,提供数据库连接字符串,其中包含用户名、密码、主机名、端口号以及要使用的数据库名称。
使用cursor()方法获取一个操作游标,并使用execute()方法执行SQL语句。
我们关闭了Cursor,并提交了事务,关闭了连接。
包括MySQL、SQLite、Oracle以及MongoDB。每个数据库需要不同的驱动程序及连接方式。连接数据库的基本步骤是通过驱动程序建立连接池,获取一个游标用于执行SQL语句,最后关闭连接池并提交事务。连接数据库是Python开发的基础技能之一,熟练掌握Python 2.7与各种数据库的连接技巧对于学习Python及开发各种项目都是非常重要的。
相关问题拓展阅读:
- MySQL-python连接MySQL数据库问题,总是抛异常。
MySQL-python连接MySQL数据库问题,总是抛异常。
不要刚开始学多线程编程就这样玩。connection 和 cursor 都不是线程安全的。
如果测试环境用桥顷多个线程,每个线程要在庆陆线程里面获取自己的 connection,然后从这个誉消顷connection 获取 cursor.
如果生产环境用多个线程,建议使用线程安全的连接池。
关于python 2.7连接数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。