1. Python连接SQL Server数据库的准备工作
1.1 安装pymssql库
在Python中连接SQL Server数据库需要使用pymssql库。可以使用pip命令来安装pymssql库,如下所示:
pip install pymssql
提示:在安装pymssql库之前需要保证已安装SQL Server的ODBC驱动程序。如果没有安装,可以从Microsoft官网下载安装。
1.2 SQL Server数据库的连接信息
在连接SQL Server数据库之前,需要获取SQL Server服务器的连接信息,包括:
服务器地址
端口号(默认为1433)
数据库名称
登录账号和密码
在本文中,我们假设SQL Server服务器地址为192.168.1.100,端口号为1433,数据库名称为testdb,登录账号为sa,密码为123456。
2. Python连接SQL Server数据库实例
在获取SQL Server服务器的连接信息之后,就可以连接数据库了。下面是Python连接SQL Server数据库的示例代码:
import pymssql
# 数据库连接信息
host = '192.168.1.100'
port = 1433
user = 'sa'
password = '123456'
database = 'testdb'
# 连接数据库
conn = pymssql.connect(host=host, port=port, user=user, password=password, database=database)
# 创建游标
cursor = conn.cursor()
# 执行SQL语句
cursor.execute('SELECT * FROM test_table')
# 提交事务
conn.commit()
# 关闭连接
conn.close()
说明:
首先导入pymssql库。
设定数据库连接信息,包括服务器地址、端口号、登录账号和密码。
使用pymssql库的connect()方法连接数据库。
使用连接对象的cursor()方法创建游标。
执行SQL语句。
如果执行的SQL语句有修改数据库的操作,需要调用连接对象的commit()方法提交事务。
最后使用连接对象的close()方法关闭连接。
3. Python连接SQL Server数据库的示例
下面我们通过一个示例来进一步学习Python连接SQL Server数据库的方法。我们将在SQL Server数据库中创建一个表,并插入数据。然后在Python中查询这个表。
3.1 SQL Server数据库的准备工作
在SQL Server数据库中创建一个表,并插入数据。在这里我们创建一个名为test_table的表,包括id和name两个字段,代码如下所示:
CREATE TABLE test_table (
id INT PRIMARY KEY,
name VARCHAR(20) NOT NULL
);
INSERT INTO test_table (id, name) VALUES (1, 'John');
INSERT INTO test_table (id, name) VALUES (2, 'Mike');
INSERT INTO test_table (id, name) VALUES (3, 'Jack');
说明:这段代码创建了test_table表,其中id是主键,name是非空字段,然后插入三条数据。
3.2 Python代码查询SQL Server的test_table表
下面是Python查询test_table表的代码:
import pymssql
# 数据库连接信息
host = '192.168.1.100'
port = 1433
user = 'sa'
password = '123456'
database = 'testdb'
# 连接数据库
conn = pymssql.connect(host=host, port=port, user=user, password=password, database=database)
# 创建游标
cursor = conn.cursor()
# 执行SQL语句
cursor.execute('SELECT * FROM test_table')
# 显示查询结果
for row in cursor:
print(row)
# 提交事务
conn.commit()
# 关闭连接
conn.close()
说明:
首先导入pymssql库。
设定数据库连接信息,包括服务器地址、端口号、登录账号和密码。
使用pymssql库的connect()方法连接数据库。
使用连接对象的cursor()方法创建游标。
执行SQL语句。
使用游标对象的fetchall()方法获取查询结果。
打印查询结果。
如果执行的SQL语句有修改数据库的操作,需要调用连接对象的commit()方法提交事务。
最后使用连接对象的close()方法关闭连接。
输出结果:
(1, 'John')
(2, 'Mike')
(3, 'Jack')
说明:查询结果是一个元组,包含id和name两个字段的值。
4. 总结
pymssql库为Python连接SQL Server数据库提供了便捷的方法。在使用pymssql库连接之前,需要先通过ODBC驱动程序,连接到目标数据库。然后在Python中就可以执行SQL语句,查询和修改数据库了。