python向Sqlserver中的增删改操作

问了半天的度娘还是不明不白,就是单纯的想向sqlserver中插入点数据,搞了半天。正题开始

一.如何连接到sqlserver

import pymssql 首先导包,就这个,当然还有另外一个,这里就用这个!!

config_conn = {

    "host": "xxx.xxx.xxx.xxx",

    "user": "xxx",

    "password": "xxx",

    "database": "xxx",

    "charset": "utf8",

}    创建个字典保存下连接信息,没毛病字典名字就是config_conn,ip,用户名,密码,数据库这都能看懂吧,最好指定下字符集

connect = pymssql.connect(config_conn) 用这个破包里的一个函数,参数就是刚刚创建的字典,返回值是个连接

cursor = connect .cursor()  我们操作的都是游标,所以取下游标

二.插入数据

cursor.execute(sql,元组)没毛病就这么多,这里有两个参数,一个就是sql,一个就是要修改sql的变量值,为什么定义这个

既然都用py写了,肯定是想用py定义的变量去填充到sql里,不想用变量??那就把后面的元组去掉直接写sql就行了。

sql = "insert into tablename(字段1,字段2,字段3) values(%s,%s,%s)"  要插入的数据用%s去填充

元组 = ('a','b','c')  这个意思懂了吧,就是把元组内的a插入字段1,b插入字段2,c插入字段3,其实就是把%s给直接替换掉,记住插入的数据

一定要放到元组内可别给放到列表里了,那样插入不进去。

上面的情况是一次插入一条记录,要是想一次插入多条呢,for循环?这样当然可以,cursor又提供了一个多插入的

cursor.executemany(sql,列表) 是不是看到这里一愣,怎么变列表了,刚刚不是说列表不行的嘛,是的列表存单独的数据不行,存元组就行了

sql = "insert into tablename(字段1,字段2,字段3) values(%s,%s,%s)"  ok,sql还是刚刚的sql

列表 =  [ ('a','b','c') , ('a','b','c') , ('a','b','c') ]  这一看就明白了,里面放着三个元组,没毛病,插入三次。

插入完 connect.commit(),提交下

cursor.close() 关下游标

connect.close() 关下连接

三.删除操作

和上面的插入操作一模一样,就是sql变成delete语句就行了,

四.更新操作

和上面的插入操作一模一样,就是sql变成update语句就行了,原谅我的懒,意思到就行了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容