Python 连接SQLSERVER

原创 2016年06月01日 12:47:09

如果使用pyodbc,直接看2就可以了,可以略过1

1. Python连接mssql

ubuntu linux上

1.1

sudo apt-get install python 
1.2 重启终端

1.3

sudo apt-get --assume-yes update  
sudo apt-get --assume-yes install freetds-dev freetds-bin  
sudo apt-get --assume-yes install python-dev python-pip  
sudo pip install pymssql  

1.4

sudo vi /etc/freetds/freetds.conf



2.安装pyodbc

 2.1 为了解决pyodbc.h:52:17: fatal error: sql.h: No such file or directory

sudo yum install unixODBC-devel.x86_64

然后:

sudo pip install pyodbc

2.2 安装MSSQL native client


2.3

编写Python程序:

import pyodbc
conn = pyodbc.connect('DRIVER={SQL Server Native Client 11.0}; SERVER=aaaa; UID=bbbb; PWD=ccc; DATABASE=ddd; Encrypt=yes; TrustServerCertificate=no');

cursor = conn.cursor()
cursor.execute("select count(distinct d) as cnt from ddddd6 where day_id=20160531")
row = cursor.fetchone()
while row:
        print str(row[0])
        row = cursor.fetchone()

Can't open lib '/opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0' : file not found (0) (SQLDriverConnect)"

方案:ldd /opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0

    linux-vdso.so.1 =>  (0x00007fff869fe000)
    libcrypto.so.6 => not found
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f360e269000)
    librt.so.1 => /lib64/librt.so.1 (0x00007f360e061000)
    libssl.so.6 => not found
    libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f360de5b000)
    libodbcinst.so.1 => /lib64/libodbcinst.so.1 (0x00007f360dc44000)
    libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f360d964000)
    libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f360d719000)
    libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f360d411000)
    libm.so.6 => /lib64/libm.so.6 (0x00007f360d10f000)
    libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f360cef8000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f360ccdc000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f360c91a000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f360e7bd000)
    libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f360c6e4000)
    libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f360c4e0000)
    libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f360c2d2000)
    libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f360c0cd000)
    libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f360beb3000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f360bc8d000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f360ba2c000)
    liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f360b807000)

 libcrypto.so.6和 libssl.so.6不存在,sudo yum install openssl098e,再次ldd /opt/microsoft/sqlncli/lib64/libsqlncli-11.0.so.1790.0,上述依赖包已经安装成功。

问题解决


Python连接SQL Server入门

Python连接SQL Server入门模块import pyodbc模块说明pyodbc模块是用于odbc数据库(一种数据库通用接口标准)的连接,不仅限于SQL server,还包括Oracle,M...
  • chroming
  • chroming
  • 2016年05月30日 23:02
  • 17554

Python实现SQL模拟功能

博客核心内容: Python实现insert插入功能 Python实现delete删除功能(remove、rename) Python实现update更新功能(remove、rename) Pytho...

python操作sqlserver

python连接sqlserver

Python访问SQL Server数据库

将下面code保存到MSSQL.py文件,以供程式调用: #coding=utf-8 #!/usr/bin/env python import pymssql import ConfigPars...

Python中SQL——LIKE中的%

需求: 做项目的过程中,使用了MySQL数据库,后台使用Python来做逻辑层。项目中需要实现一个功能,通过输入搜索框中的字符去MySQL中找到匹配的文章的标题。 SQL语句:SELECT * F...

python脚本随笔:实现生成插入表的sql语句

最近在做课程设计项目的时候需要用到

python如何操作Sql Server 2008数据库

最近由于公司的一个项目需要,需要使用Sql Server 2008数据库,开发语言使用Python,并基于windows平台上的Wing IDE4.0进行。         之前并未使用过Sql S...
  • ab198604
  • ab198604
  • 2013年04月24日 14:21
  • 10544

python连接msSqlServer

#encoding:utf-8 import pymssql # 需要用到pymssql组件 该组件下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#py...

python连接SQL Server:Pymssql模块

SQL Server 2012, 一、创建数据库Test、表tb、插入数据 在sql server中运行如下代码: create database Test; go use test; go if...
  • yupeigu
  • yupeigu
  • 2016年12月06日 17:55
  • 5157

mysql错误:my_config.h: No such file or directory

在使用源码安装mysql时,经常遇到错误:No curses/termcap library found     解决办法: yum install ncurses-devel     ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python 连接SQLSERVER
举报原因:
原因补充:

(最多只允许输入30个字)