python pyqt5模块多次引入数据库模块崩了
发布网友
发布时间:2022-04-21 08:24
我来回答
共2个回答
懂视网
时间:2022-05-01 04:18
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 文件的文件夹( 位系统可以选择文件夹名带 的),然后将这个目录添加到PATH
变量里面。
我的两个目录是:
C:freetds-v0.95.81-win-x86_-vs2008lib;
C:openssl-1.0.1q-vs2008in;
使用:
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数据库模块
标签:
热心网友
时间:2022-05-01 01:26
更新或者重新安装一个模块。Python已经成为最受欢迎的程序设计语言之一。
自从2004年以后,python的使用率呈线性增长。
由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。
例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。