我有一个MySQL表和一个Excel文件。我想更新MySQL表,以包含来自Excel文件的信息,这很简单--只需为每一行创建适当的SQL语句编写一个快速公式。
但首先,我想检查所有数据是否正确匹配。因此,如果给定行中有WidgetID 1001,我想检查WidgetID是否在MySQL表中。对于给定的行,这很简单--只需生成一个SQL语句
SELECT COUNT(*) FROM mytable WHERE WidgetID = "1001"然后执行。但是,我如何检查所有行,而不必一次粘贴在命令中?本质上,我想要的是
If (SELECT COUNT(*) FROM mytable WHERE WidgetID = "1001") = 0 Display "1001\n"但我不知道该怎么做。(我不常使用SQL!)
Clarification:,我现在不想导入数据!这将是一项复杂的任务,因为需要以各种方式将数据转换并输入到十几个不同的表中。现在,我只想检查一下非重复项(我想这几乎完全是错误,虽然有些可能是实际的新条目)。
发布于 2010-09-22 20:53:14
WidgetID列LOAD DATA INFILE with REPLACE或IGNORE选项(取决于您想用新值替换重复项还是保留以前的值)发布于 2010-09-22 21:29:33
您可以同时查询MySQL和Excel,这是一个插入,但是任何查询都可以:
Excel VBA: writing to mysql database
下面是Server的另一个示例:
INSERT data from Excel into SQL DB
您可以从:http://www.carlprothman.net/Default.aspx?tabid=81获得OLE DB和ODBC连接字符串。
https://stackoverflow.com/questions/3773298
复制相似问题