python调用sql数据库_Python3操作SQL Server数据库(实例讲解)
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()
以上这篇Python3操作SQL Server数据库(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
python调用sql数据库_Python3操作SQL Server数据库(实例讲解)相关推荐
- python3连接sql server数据库_Python3操作SQL Server数据库(实例讲解)
1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话,实用性就不那么大了. 2.最基本的SQL查询语句 python是使用pymssql这个模 ...
- mysql 事务sqlserver_SQLServer数据库:事务与隔离级别实例讲解
本文主要向大家介绍了SQLServer数据库:事务与隔离级别实例讲解,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 上班途中,你在一处ATM机前停了下来.正当你在敲入密码 ...
- mysql查询主键sql语句_MySQL数据库-表操作-SQL语句(一)
1. 数据库操作与存储引擎 1.1 数据库和数据库对象 数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件等. 数据库:存储数据库对象的容器. 数据库分两种 ...
- python达梦数据库_python 操作达 梦数据库
python 达梦数据库操作流程 连接数据库 dm.connect( ... ) 获取游标 dm_conn.cursor() 编写SQL语句 sql_str 执行SQL语句 dm_cursor.exe ...
- SQL server 触发器实例讲解
SQL触发器实例讲解(本文是来自百度文库) 定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序.触发器是一个特殊的存储过程. 常 ...
- hadooppythonjava_通过jpype实现python调用Hadoop Java Client操作HDFS
通过python操作HDFS有非常好用的模块hdfs3 ,其底层依赖c++模块libhdfs3,起初libhdfs3不支持acl权限校验对于设置了acl权限的目录和文件会报NOTFOUND错误(现已解 ...
- java对数据库的操作_java对数据库的操作(jdbc)
Java通过JDBC对数据库的连接操作其通用操作为: String username; String password; String databaseURL; Class.forName(" ...
- oracle跨数据库用户操作,ORACLE跨数据库操作,DBLINK的使用
ORACLE跨数据库操作,DBLINK的使用 前几天帮一个朋友弄ORACLE跨数据库的操作,共享下具体的操作流程: 一.不同IP的数据库(DBLINK) 本地数据库ip 10.56.7.26 远程数据 ...
- mysql数据库导入操作_mysql 导入数据库 命令操作
mysql -uroot -D数据库名 1. 导入数据到数据库中得某个表 mysql -uroot -D数据库名 表名 D:\APMServ5.2.6\MySQL5.1\bin>mysqldum ...
最新文章
- 谈谈Ext JS的组件——布局的使用方法续一
- 少儿编程:玩游戏不如设计游戏!
- 重绘Winform窗体
- UrlEncode编码算法
- c 中连接mysql登录不成功_数据库连接失败的原因分析及解决办法 | 学步园
- 对最大流算法Ford_Fulkerson的研究与理解(二)
- php调用API支付接口(转自刘68)
- 力扣401.二进制手表
- 自动化测试和测试开发的区别?培训学哪个更好?
- 蓝桥杯 基础练习 Huffuman树
- 马哥python培训如何
- 【ATSC】【OTT】Netflix将作为美国有线机顶盒界面中的一个频道
- 电池SOC仿真系列-基于GA-BP神经网络的电池SOC估算方法
- 推荐 10 个好用的 JavaScript 代码压缩工具
- 关于头条上需要总结的文章
- java lru笔试题,2016年头条校招笔试(LRU算法)
- 涉黄网站爆四大生财链:站长月入近两万
- 完美卸载SQL Server 2008 R2 的方法,适合所有问题
- 计算机音乐数字乐谱牵丝戏,天谕手游牵丝戏乐谱代码分享
- 三国志战略版:武将分析_乐进
热门文章
- Git(1)-- Win10 安装 Git 详细教程(超详细纯小白教程)
- 基于Python3-Pygame的坦克大战小游戏
- Python运行时报错 ModuleNotFoundError: No module named ‘exceptions‘
- Mac安装apktool/dex2jar/jd-gui逆向工具
- 应该怎样学习新知识?
- 无线网卡的Master,Managed,ad-hoc,monitor模式
- Abseil之Return Policy
- 人脸方向学习(十):Face Detection-MobileNet_SSD解读
- windows10(专业版和家庭版)---禁止自动更新系统
- koa2 导出excel表格设置样式_一调整Excel表格的行列宽度,图片又得重新调整?点这个设置就行...