1 安装
pip install pyodbc -i https://pypi.doubanio.com/simple
使用
1、连接sql server:
sqlCode = "select * from test ;"
with pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+host+';DATABASE='+database+';UID='+user+';PWD=' + password, charset="CP936") as conn:
with conn.cursor() as cursor:
cursor.execute(sqlCode)
2、连接mysql
需要安装mysql odbc:http://dev.mysql.com/downloads/connector/odbc/
conn_info = (‘Driver=ODBC Driver 17 for SQL Server};Server=%s;Port=%s;Database=%s;User=%s; Password=%s;Option=3;’%(host, port, database, user, pwd ))
mysql_conn = pyodbc.connect(conn_info)
mysql_cur = mysql_conn.cursor()
相关方法说明:
1.connection 对象方法
- close():关闭数据库
- commit():提交当前事务
- rollback():取消当前事务
- cursor():获取当前连接的游标
- errorhandler()作为已给游标的句柄
2. cursor游标对象和方法
- arrysize(): 使用fetchmany()方法时一次取出的记录数,默认为1
- connection():创建此游标的连接
- discription():返回游标的活动状态,包括(7要素)(name,type_code,display_size,internal_size,precision,scale,null_ok)其中name,type_code是必须的 lastrowid():返回最后更新行的id,若不支持, 返回none.
rowcount():最后一次execute()返回或者影响的行数 - callproc():调用一个存储过程
- close():关闭游标
- execute():执行sql语句或者数据库命令
- executemany():一次执行多条sql语句
- fetchone():匹配结果的下一行
- fetchall():匹配所有剩余结果
- fetchmany(size-cursor,arraysize):匹配结果的下几行
- iter():创建迭代对象(可选,参考next())
- messages():游标执行好数据库返回的信息列表(元组集合)
- next():使用迭代对象得到结果的下一行
- nextset():移动到下一个结果集
- rownumber():当前结果集中游标的索引(从0行开始)
- setinput-size(sizes):设置输入的最大值
- setoutput-size(sizes[,col]):设置列输出的缓冲值