您现在的位置是:网站首页> 编程资料编程资料
一文教会你用python连接并简单操作SQLserver数据库_python_
2023-05-26
392人已围观
简介 一文教会你用python连接并简单操作SQLserver数据库_python_
实验环境:
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

基本步骤:
安装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()原始:

处理后:

插入
#插入语句 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:
报错

原因
没有把TCP/IP协议打开
查看TCP端口位置:

保证TCP/IP开启:
开启之后,服务,重新启动服务


错误2:
出现查询结果乱码:
解决办法:
查看sqlserver的编码:
select COLLATIONPROPERTY('chinese_PRC_Stroke_CI_AI_KS_WS','CodePage')
查询结果:
936 简体中文gbk
950 繁体中文BIG5
437 加拿大/美国 英语
932 日文
949 韩文
866 俄文
总结
到此这篇关于python连接并简单操作SQLserver数据库的文章就介绍到这了,更多相关python连接操作SQLserver数据库内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
您可能感兴趣的文章:
相关内容
- python中dot函数运算过程总结_python_
- 将.py文件转化为.exe文件的详细过程_python_
- python中if的基础用法(if else和if not)_python_
- Python根据字典值对字典进行排序的三种方法实例_python_
- python单元测试框架unittest基本用法案例_python_
- Python实现暴力破解wifi密码并打包成exe_python_
- 详解Python中的null是什么_python_
- 利用Python实现热力图的绘制_python_
- pytorch简单实现神经网络功能_python_
- 四步教你学会打包一个新的Python模块_python_
