Mysql SQL脚本-基于excel数据更新表
我有以下三个表格: 产品:IDProduct,产品零件号 手册:IDManual 产品手册:IDProduct,IDManual 我必须根据包含以下两列的数据列表(2-3000个条目)更新产品和手册之间的链接:ProductPartNumber、NewProductPartNumber 我想完成的是浏览ProductManual表,如果IDProduct对应于数据列表中的ProductPartNumber,则将其替换为对应于NewProductPartNumber的IDProductMysql SQL脚本-基于excel数据更新表,mysql,sql,Mysql,Sql,我有以下三个表格: 产品:IDProduct,产品零件号 手册:IDManual 产品手册:IDProduct,IDManual 我必须根据包含以下两列的数据列表(2-3000个条目)更新产品和手册之间的链接:ProductPartNumber、NewProductPartNumber 我想完成的是浏览ProductManual表,如果IDProduct对应于数据列表中的ProductPartNumber,则将其替换为对应于NewProductPartNumber的IDProduct 我该怎么做
我该怎么做?我想我应该在一个事务中这样做,以防发生意外情况,因为此脚本将改变生产数据库。方式1:使用sql批处理,您可以为数据列表创建临时表,并运行以下sql: 开始训练 创建表#TempProductPartNumber(ProductPartNumber INT,NewProductPartNumber INT) --将数据列表插入此临时表 更新产品 设置Product.ProductPartNumber=#TempProductPartNumber.NewProductPartNumber 从产品 Product.IDProduct=ProductManual.IDProduct上的内部连接ProductManual 内部联接#TempProductPartNumber ON#TempProductPartNumber.ProductPartNumber=Product.ProductPartNumber 提交传输
方法2:获取产品和产品手册的所有数据,以相同的方式使用linq更新数据,并将数据更新回DB 您还可以使用excel中的公式为每行创建更新脚本:
="UPDATE Product p SET p.ProductPartNumber = " & A2 & " WHERE p.ProductPartNumber = " & A1
然后
="UPDATE ProductManual m SET m.IDProduct= " & A2 & " WHERE m.IDProduct= " & A1
然后运行所有行I thing,我可以帮助你们,但这个问题对我来说根本无法理解),若你们提供更多信息,那个就更好了