【问题标题】:Cannot find error in this SQL statement [closed]在此 SQL 语句中找不到错误 [关闭]
【发布时间】:2014-07-11 21:09:37
【问题描述】:

我正在使用 PHP 执行此查询,但遇到语法错误,无法确定错误在哪里。我尝试在 SET 命令之间使用逗号或不使用逗号,但仍然出现此错误。有人可以帮我发现吗?我很抱歉,但我想不通,需要第二双眼睛。

Error during import: LOAD DATA INFILE '/zzz/tmp/php0saZKS' INTO TABLE TD16 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES (recid,creatorid,@createdate,groupid,fname,minitial,lname,morf,@dateofbirth,homephonenumber,dlnumber,ssnumber,occupation,hoursperweek,address1,city,state,zip,doh,annualsalary,planstartdate) SET createdate = STR_TO_DATE(@createdate, '%m/%d/%Y %H:%i'), SET dateofbirth = STR_TO_DATE(@dateofbirth, '%m/%d/%Y %H:%i'); 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET dateofbirth = STR_TO_DATE(@dateofbirth, '%m/%d/%Y %H:%i')' at line 1

【问题讨论】:

    标签: mysql sql


    【解决方案1】:

    我认为错误是您在应该使用逗号时重复 SET 命令:

    LOAD data infile '/zzz/tmp/php0saZKS' INTO TABLE td16 fields terminated BY ',' 
    optionally enclosed BY '"' lines terminated BY '\r\n' ignore 1 lines (recid, 
    creatorid, @createdate, groupid, fname, minitial, lname, morf, @dateofbirth, 
    homephonenumber, dlnumber, ssnumber, occupation, hoursperweek, address1, city, 
    state, zip, doh, annualsalary, planstartdate) 
    
    SET
       createdate = str_to_date(@createdate, '%m/%d/%Y %H:%i'),
       dateofbirth = str_to_date(@dateofbirth, '%m/%d/%Y %H:%i'); 
    

    编辑:一个相关问题:MySQL - Multiple set on LOAD DATA INFILE

    【讨论】:

    • 谢谢!我认为它做到了!
    猜你喜欢
    • 2013-02-23
    • 2016-10-12
    • 1970-01-01
    • 2014-08-27
    • 1970-01-01
    • 2022-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多