python连接并简单操作SQL server数据库详细步骤
作者:雾凇ovo
环境:
pycharm 、SQLserver版本2019
步骤如下
1.首先,在pycharm中点击File,找到setting——project:***,点击”+“,引入pymssql库
2.编写代码连接数据库,并对数据库进行查询等简单操作(此处仅展示查询)
import pymssql connect=pymssql.connect(server='DESKTOP-08O3C8T',user='sa',password='***',database='1234') #服务器名,账号,密码,数据库名 if connect: print("连接数据库成功!") #查询 cursor=connect.cursor() sql_select="select * from SC" cursor.execute(sql_select)#执行sql语句 results=cursor.fetchall()#读取所有查询结果 for result in results: #循环读取所有结果 result=list(result) for res in range(len(result)): if isinstance(result[res],str): result[res]=result[res].replace(' ','') result=tuple(result) print("处理后:",end='') print(result) connect.commit() #关闭数据库 connect.close()
3.在sql server中由于之前使用windows验证模式进入数据库管理器,所以要身份验证修改,更改为sql身份验证连接数据库:
身份验证修改
(1)先是用Windows身份验证登录数据库,右击根目录——属性——安全性——勾选SQL和windows身份验证模式;
(2)选择根目录下安全性——登录名——sa——右击属性——修改密码并取消强制实施密码策略;状态选项里勾选授予和启用;(有一点需要注意,不管你改了几位数密码,在上图都是显示十五位。)
(3)配置协议:找到数据库中的配置工具SQL Server Configuration Manager程序,将SQL Server2005网络配置中的Named Pipes和TCP/IP的状态改成启用。然后使用SQL server身份验证登陆。如果找不到SQL Server Configuration Manager程序,可以右击此电脑——管理——Sql配置管理器:
(4)当你把这些都改好后,需要重启Sql Server Management Studio,注意是重启!!!不是将数据库关闭再打开就行,而是右击根目录——重新启动!!
结果:
补充:上述简单查询代码查询会出现中文乱码
例如查询student表:
方法一:
在pymqsql.connect()中添加charset='cp936'
原因:因为字符串字段类型为:varchar,造成读取数据乱码
缺点:若sql语句中含有中文,会得不到数据
方法二:(较为通用)
直接用sql语句将varchar转为nvarchar类型,不再需要指定charset了,就没问题了(注意转换列名称起别名),直接写sql语句如下
sql="select Sno,convert(nvarchar(50),Sname) as 'a', convert(nvarchar(50),Ssex) as 'b' from student'
处理后结果如下:
总结
到此这篇关于python连接并简单操作SQL server数据库的文章就介绍到这了,更多相关python连接操作SQLserver内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!