当前位置:Gxlcms > 数据库问题 > python数据库模块

python数据库模块

时间:2021-07-01 10:21:17 帮助过:3人阅读

python开发中,使用数据库是已经再普通不过的事情了。现在的NoSQL也很流行,但暂不涉及。本文主要记录python中连接常用关系型数据库的问题。今天在配置sql server连接时遇到了不同的模块,从而整理整个数据库模块的操作。(环境:windows,python2.7)   首先概括下面会谈到的常用关系型数据库:SQLite、MySQL、PoesgreSQL、Oracle、SQL Server、 excel
  • SQLite:sqlite3。(python2.5+内置)
  • MySQL: MySQLdb
  • PoesgreSQL:postgresql_psycopg2()
  • Oracle:  cx_Oracle
  • SQL Server: pymssql、pyodbc、adodbapi
  • excel:  pyExcelertor
    1.1 SQL Server: pymssql    安装pymssql,cmd下执行pip install pymssql,然后 在交互页面或者IDLE中 import pymmsql  出现找不到指定的模块。pip安装最新的pymssql2.1.2,但是     技术分享 于是我们需要自己安装FreeTDS和openssl。
  • 安装FreeTDS
Python 版本VS
2.7 vs2008
3.3 或者 3.4 vs2010
3.5 vs2015
下载解压出来后找到里面一个包含 DLL 文件的文件夹,将这个目录添加到系统或用户的PATH 变量里面。
  • 安装openssl

接着下载预编译好的 openssl,根据自己的 Python 版本选择对应 vs 版本的 7z 文件(见上表)。解压出来后同样找到里面包含 DLL 文件的文件夹(64 位系统可以选择文件夹名带 64 的),然后将这个目录添加到PATH 变量里面。

我的两个目录是: C:\freetds-v0.95.81-win-x86_64-vs2008\lib; C:\openssl-1.0.1q-vs2008\bin64;   使用: import pymssql conn=pymssql.connect(server="127.0.0.1",port="1433",user="sa",password="123",database="myblog",charset="UTF-8") cursor = conn.cursor() conn.close() 1.2  SQL Server: pyodbc    安装pyodbc,cmd下 pip  install  pyodbc,使用如下:   import pyodbc

连接数据库

 

1)直接连接数据库和创建一个游标(cursor)

?
1 2 cnxn = pyodbc.connect(‘DRIVER={SQL Server};SERVER=localhost;DATABASE=testdb;UID=me;PWD=pass‘) cursor = cnxn.cursor()

 

 

2)使用DSN连接。通常DSN连接并不需要密码,还是需要提供一个PSW的关键字。

?
1 2 cnxn = pyodbc.connect(‘DSN=test;PWD=password‘) cursor = cnxn.cursor()
  1.3 SQL Server: adodbapi           安装adodbapi ,cmd下 pip install adodbapi 或者安装pywin32(Since pywin32 release 211, adodbapi is included )   使用: import adodbapi  conn={‘server‘:‘192.168.29.86\\eclexpress‘,‘password‘:‘xxxx‘,‘db‘:‘pscitemp‘}     constr = r"Provider=SQLOLEDB.1; Initial Catalog=%s; Data Source=%s; user ID=%s; Password=%s; " \
         % (conn[‘db‘], conn[‘server‘], ‘sa‘, conn[‘password‘])     conn=adodbapi.connect(constr)   2、SQLite:sqlite3的使用 import sqlite3 #打开db文件,获得连接
conn = sqlite3.connect(‘数据文件名‘)
#获得游标
c = conn.cursor()
#执行SQL
c.execute(‘‘‘SQL 片段‘‘‘)
#如果有对数据的修改操作,那就需要commit一下
conn.commit()
#关闭游标
c.close()
#关闭连接 conn.close()   3、MySQL: MySQLdb的连接         import MySQLdb conn=MySQLdb.connect(host="localhost",user="root",passwd="",db="test",charset="utf8")  cursor = conn.cursor()         4、PoesgreSQL:postgresql_psycopg2   import psycopg2    conn = psycopg2.connect(database="testdb", user="postgres", password="pass123", host="127.0.0.1", port="5432")  print "Opened database successfully"    cur = conn.cursor()    5、Oracle:  cx_Oracle   import cx_Oracle                                          #引用模块cx_Oracle
conn=cx_Oracle.connect(‘load/123456@localhost/ora11g‘)    #连接数据库
c=conn.cursor()                                           #获取cursor   6、excel:  pyExcelertor   from pyExcelerator import * sheets=pyExcelerator.parse_xls(‘xxx.xls‘) #读取文件内容

python数据库模块

标签:

人气教程排行