首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >填充数据库的所有字段时出现问题

填充数据库的所有字段时出现问题
EN

Stack Overflow用户
提问于 2012-06-21 13:36:44
回答 2查看 54关注 0票数 1

我正在尝试将一个文本文件导入到MySQL数据库中,但是在让第一个字段(card_no)完全填充我的所有记录时遇到了问题。导入文件(不会产生任何错误)后,第一条记录正确显示,但其他记录不显示。有人能告诉我如何解决这个问题吗?--如果重要的话,我是使用phpMyAdmin加载文件的。--谢谢你抽出时间来。

下面是数据库的结构:

代码语言:javascript
复制
Field       Type            Collation         Attributes    Null    
card_no     smallint(6)                       Yes           NULL
name        varchar(100)    latin1_swedish_ci No    
artist      varchar(30)     latin1_swedish_ci Yes           NULL
color       varchar(25)     latin1_swedish_ci Yes           NULL
rarity      varchar(1)      latin1_swedish_ci Yes           NULL
expansion   varchar(50)     latin1_swedish_ci Yes           NULL

代码如下:

代码语言:javascript
复制
    LOAD DATA LOCAL INFILE 'C:\\xampp\\tmp\\php43.tmp'
    INTO TABLE `mtginfo` FIELDS TERMINATED BY ';'
    ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY ',';

下面是导入的文件:

代码语言:javascript
复制
    "1";"Ajani Goldmane";"Aleksi Briclot";"White";"M";"Magic 2010",
    "2";"Angel's Mercy";"Andrew Robinson";"White";"C";"Magic 2010",
    "3";"Armored Ascension";"Jesper Ejsing";"White";"U";"Magic 2010",
    "4";"Baneslayer Angel";"Greg Staples";"White";"M";"Magic 2010",
    "5";"Blinding Mage";"Eric Deschamps";"White";"C";"Magic 2010"

以下是输出的示例:

代码语言:javascript
复制
    card_no name            artist          color   rarity  expansion
    1       Ajani Goldmane  Aleksi Briclot  White   M       Magic 2010
    0       Angel's Mercy   Andrew Robinson White   C       Magic 2010
    0       Armored Ascensi Jesper Ejsing   White   U       Magic 2010
    0       Baneslayer Ange Greg Staples    White   M       Magic 2010
    0       Blinding Mage   Eric Deschamps  White   C       Magic 2010
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-22 00:07:51

我不确定回答你自己问题的协议是什么,所以如果其他人有这个问题,我会发布我刚刚发现的解决方案。--我将CARD_NO字段类型设置为smallint,并尝试将非整数类型加载到其中。因此,导入不会加载char类型(因为有引号,所以是char),它会移动到下一个字段。--再次感谢您的回答,Devart。虽然你的回复没有纠正我的问题,但它确实让我更多地思考了我的问题。

票数 0
EN

Stack Overflow用户

发布于 2012-06-21 14:38:58

所有新行都以一些空格开头。您应该通过指定以子句开头的行来处理它们,例如-

代码语言:javascript
复制
LOAD DATA LOCAL INFILE 'd:\\1\\php43.tmp'
INTO TABLE 'C:\\xampp\\tmp\\php43.tmp'
FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\'
LINES STARTING BY '        ' TERMINATED BY ',';
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11132098

复制
相关文章

相似问题

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