首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何填充数据库?

问如何填充数据库?
EN

Stack Overflow用户
提问于 2012-03-09 00:46:11
回答 4查看 3.8K关注 0票数 1

我有一个mysql数据库,只有一个表,其中包括一个自动增量ID、一个字符串和两个数字。我想用来自文本文件的许多字符串填充这个数据库,所有数字最初都重置为0。

有没有快速完成的方法?我曾想过创建一个可以生成许多INSERT语句的脚本,但这似乎有点原始和缓慢。特别是因为mysql在远程站点上。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-09 00:49:33

是-使用LOAD DATA INFILE docs are here示例:

代码语言:javascript
复制
LOAD DATA INFILE 'csvfile'
INTO TABLE table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 0 LINES
(cola, colb, colc)
SET cold = 0,
cole = 0;

请注意set行-这里是设置默认值的位置。

根据您的字段分隔符,更改FIELDS TERMINATED BY ','行

票数 7
EN

Stack Overflow用户

发布于 2012-03-09 00:51:08

如果您有权访问服务器的文件系统,则可以使用LOAD DATA

如果你不想与语法作斗争,最简单的方法(如果在windows上)是使用HeidiSQL

它为此目的提供了友好的向导。

也许我可以帮助你正确的语法,如果你张贴样本行从文本文件。

票数 1
EN

Stack Overflow用户

发布于 2012-03-09 00:55:25

其他答案只回答了你问题的一半。对于另一半(将数字列置零):

也是:

  1. 在文本文件中将number列的默认值设置为0,
  2. ,只需删除数值,
  3. 这将导致LOAD INFILE as null读取字段,并分配默认值,您已将该值设置为0。

或:

  1. 表中有数据后,发出MySQL命令将字段置零,如下所示

UPDATE table SET first_numeric_column_name = 0, second_numeric_column_name = 0 WHERE 1;

要总结所有内容,请使用LOAD DATA INFILE。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9621407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档