,可以通过以下步骤实现:
以下是一个示例代码(使用Python和MySQL):
import csv
import MySQLdb
# 1. 解析CSV文件
data = []
with open('data.csv', 'r') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
data.append(row)
# 2. 连接数据库
conn = MySQLdb.connect(host='localhost', user='username', passwd='password', db='database')
cursor = conn.cursor()
# 3. 更新多个表
for row in data:
# 更新表1
sql1 = "UPDATE table1 SET column1 = %s WHERE column2 = %s"
cursor.execute(sql1, (row['value1'], row['value2']))
# 更新表2
sql2 = "UPDATE table2 SET column3 = %s WHERE column4 = %s"
cursor.execute(sql2, (row['value3'], row['value4']))
# ...
# 提交事务
conn.commit()
# 4. 获取行ID
row_id = cursor.lastrowid
print("Inserted/updated row ID:", row_id)
# 关闭数据库连接
cursor.close()
conn.close()
在上述示例中,我们首先使用csv模块解析CSV文件,并将数据存储在一个列表中。然后,我们连接到MySQL数据库,并使用循环遍历数据列表,执行更新操作。在每次更新后,我们使用cursor.lastrowid
获取刚刚插入或更新的行的ID,并打印出来。
请注意,上述示例仅为演示目的,实际情况中需要根据具体的数据库和编程语言进行适当的调整。
领取专属 10元无门槛券
手把手带您无忧上云