学习python 连接 sql server 及 搭建web 使用
#coding=utf8 import pymssql #连接数据库函数 def get_db(sql, typd='select',charset='GB18030'): #sql server 配置数据库时候 避免中文乱码 设置编码方式 为 GB18030 即可 插入 需要使用 utf8 #或者convert(nvarchar(20), mtl_name) 二选一 connect = pymssql.connect('***.***.***.***', '***', '***', '***',charset=charset) # 服务器名,账户,密码,数据库名 , 最后这个一定要写要不中文就是乱码 cursor = connect.cursor() cursor.execute(sql) if typd == 'add': connect.commit() # 提交 rs = '' elif typd == 'select': rs = cursor.fetchall() print('创建游标') try: print('提交数据') yield rs finally: print('关闭') cursor.close() # 关闭游标 connect.close() # 关闭连接
写成 yeild 的形式 方便调用
查询:
name ='aa00002' # sql = "insert into wzh_ic_porid_mes (mtl_no,mtl_name,special,uom,qty) values ({},{},{},{},{})".format('aa00002','粉头部','粉色','个',50) sql ="select * from wzh_ic_porid_mes where mtl_no ='{0}'".format(name) getmess = next(get_db(sql, typd='select')) print(getmess)
此处有个大坑 ,,,,,,,,,,,,就是 一定要 '{}' 引号一定带 然后就是 编码类型要 GB18030 要不查询中文就是就乱码
插入 编码方式这个地方要用 utf8 要不插入就是乱码
sql = "insert into wzh_ic_porid_mes (mtl_no,mtl_name,special,uom,qty) values ('{0}','{1}','{2}','{3}',{4})".format('aa00003','粉头部','粉色','个',50) # sql ="select * from wzh_ic_porid_mes where mtl_no ='{0}'".format(name) getmess = next(get_db(sql, typd='add',charset='utf8'))
修改
sql ="update wzh_ic_porid_mes set mtl_name ='粉1头部' where mtl_no='{}'".format('aa00003') # sql ="delete from wzh_ic_porid_mes where mtl_no ='{0}' ".format('aa00003') getmess = next(get_db(sql, typd='add',charset='utf8'))
删除
sql ="delete from wzh_ic_porid_mes where mtl_no ='{0}' ".format('aa00003') getmess = next(get_db(sql, typd='add',charset='utf8'))
整体上常用内容如上 编码方式及内容如上
年与时驰,意与日去,遂成枯落,
多不接世,悲守穷庐,将复何及。