【问题标题】:How to update a column in mySQL database with Excel如何使用 Excel 更新 mySQL 数据库中的列
【发布时间】:2012-08-18 09:12:39
【问题描述】:

我有一张桌子,大约有一张桌子。 10,000 条客户记录。 表结构如下所示:

客户 ID | 名字 | | 电话号码

我正在尝试使用更新的 Excel 文件更新 PhoneNumber 列, 它只有两列,ClientID | 电话号码

我的 cpanel 安装了 phpmyadmin,但是如何将 excel 文件导入数据库并仅根据 ClientID 更新 PhoneNumber

谢谢大家!

【问题讨论】:

标签: php mysql database excel phpmyadmin


【解决方案1】:

简单、棘手且聪明的解决方案:

用列复制它做数据表:

SQL | PhoneNumber | SQL | ClientID | SQL

样本数据:

第 1 列:UPDATE clients SET phonenumber = '(复制到每一行)

第 2 栏:12345

第 3 列:' WHERE ClientID=(复制到每一行)

第 4 栏:123

第 5 列:;(复制到每一行)

另存为 CSV(空格分隔,不带引号),导入为 SQL

【讨论】:

  • 那个sql文件不会包含很多无关的逗号(或制表符等)吗?
  • 老实说,我不喜欢 excel,但在 OpenOffice 中,您可以保存不带引号的 CSV,并使用空格作为分隔符。无论如何,在文本编辑器中从文件中删除引号不是问题。
  • 我不相信 excel 可以正常使用该选项。无论如何,即使分隔符是空格,它仍然会乱七八糟。例如,如果 phonenumber 作为字符串处理,它将保存为“555-5555”而不是“555-5555”。
  • 将文本编辑器中出现的所有" " 替换为` ` 是没有问题的。转换、替换和导入需要 2-3 分钟 :)
【解决方案2】:

我不知道这是否可能,但您可以轻松地使用 excel 电子表格生成一系列 MySQL 命令来更新电话号码。如果 ID 是 A 列,电话号码是 B 列,那么函数就是:

concatenate("update yourTableName set phonenumber = '", A1, "' where ID = ", B1, ";")

然后填写并将生成的命令复制到 PHPMyAdmin 的 SQL 选项卡中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多