Python3操作SQL Server数据库(实例讲解)
作者:PyLearn 时间:2024-01-24 04:13:21
1.前言
前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话,实用性就不那么大了。
2.最基本的SQL查询语句
python是使用pymssql这个模块来操作SQL Server数据库的,所有需要先安装pymssql。
这个直接在命令行里输入pip install pymssql安装就行了
然后还要配置好自己本地的SQL Server数据库,进入Microsoft SQL Server Management Studio中可以进行设置。如果你选择的是使用Windows身份验证的方式的话,要改成SQL验证方式才行。这个网上教程很多,搜索一下就出来了。
3.简单测试语句
import pymssql
conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
#查看连接是否成功
cursor = conn.cursor()
sql = 'select * from student'
cursor.execute(sql)
#用一个rs变量获取数据
rs = cursor.fetchall()
print(rs)
打开IDLE,新建python程序:
运行结果:
4.提交与回滚
在python中,在操作完 "增删改" 之后,还需要执行commit()才能真正提交代码执行,如果出意外的话就执行rollback()回滚到之前的状态,相当于之前的操作都白做了,这样也保护了数据库。
所以建议写程序这样写:
try:
conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
cursor = conn.cursor()
sql = 'insert into student values('0001', '张三', 18, '男', '文学院')'
cursor.execute(sql)
conn.commit()
except Exception as ex:
conn.rollback()
raise ex
finally:
conn.close()
大家可以试一试将conn.commit()删去,然后看看数据库是否有变化。
5.封装成类的写法
'''
TestDB类
功能:测试数据库的类写法
作者:PyLearn
博客: http://www.cnblogs.com/PyLearn/
最后修改日期: 2017/10/17
'''
import pymssql
class TestDB():
def __init__(self):
try:
self.conn = pymssql.connect(host='127.0.0.1',
user='sa',
password='123',
database='SQLTest',
charset='utf8')
self.cursor = self.conn.cursor()
self.sql = "insert into student values('0001', '张三', 18, '男', '文学院')"
self.cursor.execute(self.sql)
self.conn.commit()
except Exception as ex:
self.conn.rollback()
raise ex
finally:
self.conn.close()
if __name__ == '__main__':
test_DB = TestDB()
来源:http://www.cnblogs.com/PyLearn/p/7688020.html
标签:Python3,SQLServer,数据库
0
投稿
猜你喜欢
python协程之yield和yield from实例详解
2022-10-31 05:47:42
解决python文件字符串转列表时遇到空行的问题
2021-06-27 09:18:25
Python xmltodict模块安装及代码实例
2023-05-27 09:25:43
python3.6数独问题的解决
2022-06-21 20:40:32
Python中的bytes类型用法及实例分享
2022-12-19 01:50:42
MySQL8重置root账户密码图文教程超详细讲解
2024-01-25 17:40:55
通过Python实现猜灯谜游戏的示例代码
2022-01-10 17:49:40
python 模拟登陆github的示例
2022-01-05 17:52:41
重学Go语言之运算符与控制结构详解
2024-02-07 23:42:06
用ASP读取/写入UTF-8编码格式的文件
2007-08-20 09:29:00
Go语言通过smtp发送邮件的方法
2024-01-29 19:21:27
通过Cursor工具使用GPT-4的方法详解
2023-08-28 05:08:34
Python实现功能完整的个人员管理程序
2021-03-26 02:31:15
C语言中操作sqlserver数据库案例教程
2024-01-24 17:47:32
JS实现控制表格内指定单元格内容对齐的方法
2024-04-17 09:42:28
golang 字符串比较是否相等的方法示例
2024-02-05 14:45:07
sql无效字符 执行sql语句报错解决方案
2023-06-24 19:47:45
Oracle开发之报表函数
2023-07-23 16:29:00
python中迭代器(iterator)用法实例分析
2023-12-16 05:32:51
python实现自动发送报警监控邮件
2023-02-02 06:17:15