如何将数据复制并粘贴到 MySQL Workbench 表中?
Posted
技术标签:
【中文标题】如何将数据复制并粘贴到 MySQL Workbench 表中?【英文标题】:How can I copy-and-paste Data into MySQL Workbench table? 【发布时间】:2015-06-03 18:17:31 【问题描述】:多年来,我一直在使用mysql Workbench
和MS SQL Server Management Studio
。我喜欢SSMS
的一件事是能够从 Excel 文档复制信息并将其粘贴到SSMS
的结果窗格中。是否有类似的方法可以将信息导入MySQL Workbench
的表中?这种方法既快速又简单。现在我为 MySQL 做的方式是我从 excel 导出到 CSV 文件,然后从 CSV 文件导入到 MySQL。谢谢!
【问题讨论】:
【参考方案1】:无法仅使用剪贴板将整个 Excel 表插入 MySQL Workbench 中的结果集中。对于这项任务,您通过 CSV 文件的方法是最好的方法。不过,有一个选项可以复制/粘贴整行,这可能有助于进行小的更改。
【讨论】:
【参考方案2】:带有 CSV 的第三方工具
如果您愿意使用第三方工具,您可以从 Excel 工作表 select-copy 或在文本编辑器中打开的 CSV 粘贴到 this tool 以生成 INSERT INTO
或 UPDATE
语句。它还可以添加具有适当大小的VARCHAR
s 的CREATE TABLE
作为选项(在许多其他输出选项中)。您可以从该工具直接复制并粘贴到 mySQL Workbench 中的空白 SQL 页面中。
带有正则表达式的第三方工具
或者,您可以使用诸如https://regex101.com 之类的正则表达式工具来生成SQL 代码。例如,一个由制表符分隔的三字段 csv 可以通过这个正则表达式解码
^([^\t]*)\t([^\t]*)\t([^\t]*)$
然后在替换表达式中,这个
INSERT INTO `myschema`.`mytable` SET `first_field`='$1', `second_field`='$2', `third_field`= TRIM('$3'), `outbox_sent_text` = 'Friday, December 04, 2020 12:28 PM', `inbox_received_text` = 'Fri, 4 Dec 2020 15:43:08 +0000' AS `NEW` ON DUPLICATE KEY UPDATE id=id;
请注意,此替换使用更新后的 INSERT...ON DUPLICATE KEY UPDATE
方法,该方法将 replace the deprecated VALUES
syntax
将INSERTs
块复制到一个空的Workbench SQL 窗口中,然后运行查询。
第三方不行?没问题,也可以在本地工作
如果不允许通过网站发送此内容,则可以使用本地脚本或本地文本编辑工具(Notepad++ 等)完成相同的正则表达式替换。
【讨论】:
以上是关于如何将数据复制并粘贴到 MySQL Workbench 表中?的主要内容,如果未能解决你的问题,请参考以下文章