批量生成sql语句

文章讲述了如何使用Python的pandas库读取Excel文件,然后根据数据生成INSERT、UPDATE和DELETESQL语句,利用f-string进行字符串格式化和数据转换。
摘要由CSDN通过智能技术生成

批量生成sql语句

  • 利用表格直接生成
# 例:A2 表示 A列第二行 公式表示为 ,A2,

# 新增
=CONCATENATE("insert into users (id,code,name) values (null,'",A2,"','",B2,"');")

# 修改
=CONCATENATE("update users set name = '",B3,"' where code =  '",A3,"';")

# 删除
=CONCATENATE("delete from  users where code =  '",A2,"';")

参考: https://cloud.tencent.com/developer/article/1666116

  • pythonj脚本
import pandas as pd

# 读取Excel文件
df = pd.read_excel('your_excel_file.xlsx')

# 将每行数据生成INSERT语句
insert_statements = []
for index, row in df.iterrows():
    values = ", ".join([f"'{str(value)}'" for value in row])
    insert_statement = f"INSERT INTO your_table_name (column1, column2, ...) VALUES ({values});"
    insert_statements.append(insert_statement)

# 将生成的INSERT语句写入文件
with open('insert_queries.sql', 'w') as f:
    for statement in insert_statements:
        f.write(statement + '\n')


  • 代码解析

str(value)是将变量value转换为字符串类型的Python内置函数。这个函数的作用是将任何类型的数据转换为对应的字符串表示形式.


f"" 是 Python 3.6 引入的 f-string 格式化字符串的语法。在 f-string 中,可以在字符串中直接引用变量,并在字符串中插入它们的值。例如:

python
name = "Alice"
age = 30
print(f"My name is {name} and I am {age} years old.")
这将输出:

My name is Alice and I am 30 years old.
在 f-string 中,花括号 {} 内的表达式会被计算,并替换为其值的字符串表示。
", ".join 是 Python 中字符串的一个方法,用于将可迭代对象中的元素以指定的分隔符连接起来,并返回一个新的字符串。例如:

python
my_list = ['apple', 'banana', 'orange']
result = ", ".join(my_list)
print(result)
这将输出:

apple, banana, orange
在这个例子中,join 方法将列表 my_list 中的元素以逗号加空格的形式连接起来,并返回一个新的字符串。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值