pymssql 安装与SQL Server连接问题处理

pymssql 安装与 SQL Server连接

一、下载pymssql-2.1.0-py2.6-win32.egg (md5)     ,放到python的script目录下,运行easy_install pymssql-2.1.0-py2.6-win32.egg (md5)     安装

二、http://pymssql.org/en/latest/pymssql_examples.html这里有连接的例子,一开始的时候照着也是连接不上,要打开SQL Server的网络连接。打开SQL Server的配置管理器,把网络配置里的TCP/IP启用。

三、中文的处理。要用encode('utf8'),如:commnad = commnad.encode('utf8')

官方例子:

from os importgetenv
import pymssql

server = getenv("PYMSSQL_TEST_SERVER")
user = getenv("PYMSSQL_TEST_USERNAME")
password = getenv("PYMSSQL_TEST_PASSWORD")

conn = pymssql.connect(server,user, password,"tempdb")
cursor = conn.cursor()
cursor.execute("""
IF OBJECT_ID('persons', 'U') IS NOT NULL
DROP TABLE persons
CREATE TABLE persons (
id INT NOT NULL,
name VARCHAR(100),
salesrep VARCHAR(100),
PRIMARY KEY(id)
)
""")
cursor.executemany(
    "INSERT INTO persons VALUES (%d,%s, %s)",
    [(1, 'John Smith', 'John Doe'),
     (2, 'Jane Doe', 'Joe Dog'),
     (3, 'Mike T.', 'Sarah H.')])
# you must call commit() to persist your data if you don't set autocommit to True
conn.commit()

cursor.execute('SELECT * FROM persons WHERE salesrep=%s','John Doe')
row = cursor.fetchone()
while row:
    print("ID=%d, Name=%s"% (row[0],row[1]))
    row = cursor.fetchone()

conn.close()








  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Tornado中使用pymssql创建SQL Server连接池可以通过以下步骤实现: 1. 首先,确保已经安装pymssql库。可以使用pip命令进行安装:`pip install pymssql` 2. 导入必要的模块: ```python import pymssql from tornado.ioloop import IOLoop from tornado.gen import coroutine from tornado.concurrent import Future ``` 3. 创建一个连接池类,用于管理数据库连接: ```python class ConnectionPool: def __init__(self, host, user, password, database, max_connections=10): self.host = host self.user = user self.password = password self.database = database self.max_connections = max_connections self.connections = [] def get_connection(self): if len(self.connections) < self.max_connections: conn = pymssql.connect( host=self.host, user=self.user, password=self.password, database=self.database ) self.connections.append(conn) return conn else: raise Exception("Connection pool is full") def release_connection(self, conn): if conn in self.connections: self.connections.remove(conn) conn.close() ``` 4. 在Tornado的请求处理器中使用连接池: ```python class MyHandler(RequestHandler): def initialize(self, connection_pool): self.connection_pool = connection_pool @coroutine def get(self): conn = self.connection_pool.get_connection() cursor = conn.cursor() cursor.execute("SELECT * FROM table_name") result = cursor.fetchall() cursor.close() self.connection_pool.release_connection(conn) # 处理查询结果 # ... ``` 5. 创建连接池实例并启动Tornado应用: ```python if __name__ == "__main__": connection_pool = ConnectionPool(host="localhost", user="username", password="password", database="dbname") app = Application([ (r"/", MyHandler, dict(connection_pool=connection_pool)), ]) app.listen(8888) IOLoop.current().start() ``` 这样,你就可以在Tornado应用中使用pymssql创建SQL Server连接池了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值