1

这是我的命令行查询。

mysql> load data local infile "c:\\re\\30-11-08.csv" 
into table powerdata(Date, DG1, DG2, DG3, Dg4, DG5, ChillerPanel1, 
    ChillerPanel2, ChillerPanel3, ChillerPanel4,1st_Floor, 2nd_Floor, 
    3rd_Floor, 4th_Floor, UPS1, UPS2, UPS3, UPS4, UPS5,Server_Power, 
    Cooling_Power) 
    fields terminated by ',' lines terminated by '\n'
set Dateformat=str_to_date(Date, '%m/%d/%Y' '%H:%i:%s');

ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册以获取正确的语法,以便在 'fields terminate by ',' lines 以 '\n'set Dateformat=str_to_date(Date' at line 1 附近使用

我不知道错误在哪里!谁能帮我?

4

1 回答 1

2

我想“set Dateformat=”部分导致了这个问题。您的列名为“日期”,因此该部分应如下所示:

set Date = str_to_date(@datevar, 'your format')

另请参阅手册中的以下代码示例:

LOAD DATA INFILE 'file.txt'
  INTO TABLE t1
  (column1, @var1)
  SET column2 = @var1/100;

顺便说一句:在 MySQL 5.0.3 之前,不支持 SET 子句。

于 2009-03-10T08:01:52.307 回答