我想讀取一個csv文件並將行插入到表中。當我分配值時,我可以插入它們而沒有任何問題。但是當我嘗試使用@user變量時,同樣的sql停止工作。mysql infile無法訪問子查詢中的@user變量
所有幫助表示讚賞。
這工作:
LOAD DATA INFILE 'tmp/test.csv'
INTO TABLE T1
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(@var1)
set create_timestamp = now(),
col1 = (select max(id) from T2 where
col2 = 1234);
這不起作用:
LOAD DATA INFILE 'tmp/test.csv'
INTO TABLE T1
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(@var1)
set create_timestamp = now(),
col1 = (select max(id) from T2 where
col2 = @var1);
「不起作用」是什麼意思? –
問題發生在子查詢中,在這裏它無法訪問用戶變量@ var1。 子查詢的作品,當我給它一個恆定的值,如1234. – Aniks
@Anika。 。 。它正在產生一個錯誤。如果是這樣?它是否產生了不良結果。如果是這樣? –