1、sql_server插入

import pymssql
#加载连接数据库sql_server的模块

connect = pymssql.connect('127.0.0.1', 'sa', '******', 'test')
#设定变量connect 执行连接数据库 分别是ip、用户、密码、数据库选择

cursor = connect.cursor()
#设定变量cursor 创建光标

sql = "insert into c3(id, name, age) values ('12','ki','22');commit"
#执行SQL语句,向表c3插入数据,SQL_server 语句后面需要接上commit 提交,否则无法提交到数据。

try:
    cursor.execute(sql)
    #如果没有问题执行数据库命令
    
except:
    connect.rollback()
    #如果语句报错则滚回
    
cursor.close()
#关闭光标
connect.close()
#光标连接

2、sql_server 删除

import pymssql
connect = pymssql.connect('127.0.0.1', 'sa', '******', 'test')
cursor = connect.cursor()
sql = "delete from c3 where id = 12 ;commit"
try:
    cursor.execute(sql)
except:
    connect.rollback()
cursor.close()
connect.close()

3、sql_server 更新

import pymssql
connect = pymssql.connect('127.0.0.1', 'sa', '******', 'test')
cursor = connect.cursor()
sql = "update c3 set name = 'kki',age = '33' where id = 22 ;commit"
try:
    cursor.execute(sql)
except:
    connect.rollback()
cursor.close()
connect.close()

4、变量传入

import pymssql
id1 = 23 
name1 = "tre"
age1 = 24
connect = pymssql.connect('127.0.0.1', 'sa', '******', 'test')
cursor = connect.cursor()
sql = "insert into c3(id, name, age) values ('%d', '%s', '%d');commit" % (id1, name1, age1)
#变量传入,使用%d 代表int类型、%s字符串类型,变量需要在commit之后传入   
try:
    cursor.execute(sql)
except:
    connect.rollback()
cursor.close()
connect.close()

5、批量插入规律的数据

import pymssql
i = 1
name = 'user'
age = 24
connect = pymssql.connect('127.0.0.1', 'sa', '*******', 'test')
cursor = connect.cursor()
for j in range(10):
    sql = "insert into c3(id, name, age) values ('%d', '%s', '%d');commit" % (i, name+str(i), age)
    #插入数据的时候,i是int类型,需要转换成字符串类型使用str(i)
    try:
        cursor.execute(sql)
    except:
        connect.rollback()
    i = i + 1
    j = j + 1
cursor.close()
connect.close()

6、批量修改

import pymssql
connect = pymssql.connect('127.0.0.1', 'sa', '********', 'test')
cursor = connect.cursor()
sql = "select * from A8SD_GLDEPARTMENT where year = 2020 and ACCOUNTID = 001 and (oadepid = 1703065553569008174 OR oadepid = 3932086535711443527)"
#查询想要的数据转换成变量

cursor.execute(sql)

row = cursor.fetchall()
#把查询的结果转换成list列,

for i in row:
#进行循环处理

    #print(i[1], i[4], i[5])
    #循环打印当前列的 1 、4、 5的值
    
    sql1 = "update A8SD_GLDEPARTMENT set UFDEPID = '%s', UFDEPNAME = '%s' where ACCOUNTID <> 001 and oadepid = '%s';commit "% (i[4], i[5], i[1])
    #对自己的数据表进行数据更新处理
    
    try:
        cursor.execute(sql1)
    except:
        connect.rollback()
cursor.close()
connect.close()