mysql - LOAD DATA LOCAL INFILE syntax error -
working mysql: mysql ver 14.14 distrib 5.6.24, debian-linux-gnu (x86_64) using editline wrapper
i trying cron load data local infile job run twice day. having remarkably difficult time sorting syntax. currently, have this:
#!/bin/bash mysql --user=dbuser --password="dbuserpassword" --database=dsdb --local-infile --execute " load data local infile '/mnt/hqsccm/tsreport.csv' table temptable fields terminated ',' lines terminated '\r\n' (@compname,@imgdate,@imgname,@imgsttime,@imgendtime,@tottime,@engname,@engemail) set computername=@compname,imagingdate=@imgdate,imagename=@imgname,imagestarttime=@imgsttime,imageendtime=@imgendtime,totaltime=@tottime,engineername=@engname,engineeremail=@engemail; truncate hqsccmmachines; insert hqsccmmachines (computername,imagingdate,imagename,imagestarttime,imageendtime,totaltime,engineername,engineeremail) select (computername,imagingdate,imagename,imagestarttime,imageendtime,totaltime,engineername,engineeremail) temptable truncate temptable; "
and keep getting this:
error 1064 (42000) @ line 11: have error in sql syntax; check manual corresponds mysql server version right syntax use near 'temptable' @ line 5
help?
this should work(if file , table exist)-
load data local infile '/mnt/hqsccm/tsreport.csv' table temptable fields terminated ',' lines terminated '\r\n' (@compname,@imgdate,@imgname,@imgsttime,@imgendtime,@tottime,@engname,@engemail) set computername=@compname,imagingdate=@imgdate,imagename=@imgname,imagestarttime=@imgsttime,imageendtime=@imgendtime,totaltime=@tottime,engineername=@engname,engineeremail=@engemail; truncate hqsccmmachines; insert hqsccmmachines (computername,imagingdate,imagename,imagestarttime,imageendtime,totaltime,engineername,engineeremail) select computername,imagingdate,imagename,imagestarttime,imageendtime,totaltime,engineername,engineeremail temptable; truncate temptable;
Comments
Post a Comment