一文教会你用python连接并简单操作SQLserver数据库

09-15 103阅读 0评论

实验环境

Python版本3.9

python 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)] on win32 type "help", "copyright", "crediTS" or "license" for more informatiON. >>> 

SqlServer版本2019

exec xp_msver 

一文教会你用python连接并简单操作SQLserver数据库

基本步骤:

安装pymssql模块

#pip 安装pymssql (Python3.6以上直接安装不上) pip install pymssql 
#在官网下载pymssql对应版本,在当前文件夹下 https://pypi.org/project/pymssql/ pip install pymssql-2.2.4-cp39-cp39-win_amd64.whl 

编写代码

sqlserver.py

#coding=utf-8  #settng设置全局为utf—8格式 #导 import pymssql #创建连接字符串  (sqlserver默认端口为1433) conn =pymssql.connect(host='localhost', #这里的host='_'可以用本机ip或ip+端口号  server="******",#本地服务器  port="1433",#TCP端口  user="sa",passWord="******",  database="******",  charset="GBK" #这里设置全局的GBK,如果设置的是UTF—8需要将数据库默认的GBK转化成UTF-8 ) if conn:    print('连接数据成功!')#测试是否连接上 

查询

#查询语句 cursor =conn.cursor()  #使用cursor()方法获取操作游标 sql_select="SELECT * from STUDENT"  #数据库查询语句 cursor.execute(sql_select) #执行语句 results =cursor.fetchall() #获取所有记录列表 #print('原始:',end="") #print(result)   #后边有空格  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) # conn.commit() #关闭数据库 conn.Close()

原始:

一文教会你用python连接并简单操作SQLserver数据库

处理后:

一文教会你用python连接并简单操作SQLserver数据库

插入

#插入语句 cursor =conn.cursor() sql_insert="insert into student values(990031,'wang',20,'男','bb','aa')" cursor.execute(sql_insert) conn.commit() conn.close() 

更新

#更新语句 cursor =conn.cursor() sql_update="update student set AGE=21 where SNO='990031' " cursor.execute(sql_update) conn.commit() conn.close() 

删除语句

#删除语句 cursor =conn.cursor() sql_delete="delete from student where sno='990031'" cursor.execute(sql_delete) conn.commit() conn.close() 

增加表

#新建表 cursor =conn.cursor() sql_create="""create table table_student(SNO int primary key not null,SNAME varchar(100),SDEPT varchar(100),BPLACE varchar(100))""" cursor.execute(sql_create) conn.commit() conn.close() 

错误1:

报错

一文教会你用python连接并简单操作SQLserver数据库

原因

没有把TCP/IP协议打开

查看TCP端口位置:

一文教会你用python连接并简单操作SQLserver数据库

保证TCP/IP开启:

开启之后,服务,重新启动服务

一文教会你用python连接并简单操作SQLserver数据库

一文教会你用python连接并简单操作SQLserver数据库

错误2:

出现查询结果乱码:

解决办法:

查看sqlserver的编码:

select COLLATIONPROPERTY('chinese_PRC_Stroke_CI_AI_KS_WS','codePage')

一文教会你用python连接并简单操作SQLserver数据库

查询结果:

936 简体中文gbk

950 繁体中文BIG5

437 加拿大/美国 英语

932 日文

949 韩文

866 俄文

总结

到此这篇关于python连接并简单操作sqlserver数据库的文章就介绍到这了,更多相关python连接操作SQLserver数据库内容请搜索云初冀北以前的文章或继续浏览下面的相关文章希望大家以后多多支持云初冀北!

免责声明
本站提供的资源,都来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,我们不保证内容的长久可用性,通过使用本站内容随之而来的风险与本站无关,您必须在下载后的24个小时之内,从您的电脑/手机中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:Goliszhou@gmail.com
$

发表评论

表情:
评论列表 (暂无评论,103人围观)

还没有评论,来说两句吧...