我正在尝试使用此示例中的代码:
MySQL load NULL values from CSV data
我正在使用此代码(当我不使用最后三行时,该代码有效)
LOAD DATA LOCAL INFILE 'Myfiles/Products.csv'
INTO TABLE tblProducts
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(product_id, manufacturer, sku, pname, price, @vstock, @vcategory_id, lf_code)
Set
stock = ifnull(@vstock = ''),
category_id = ifnull(@vcategory_id = '');
但是,我一直收到错误代码1582:"本机函数调用中的参数计数不正确' ifnull' "有人可以解释出了什么问题吗?
答案 0 :(得分:1)
您应该使用NULLIF()
,而不是IFNULL()
。它需要两个参数:在正常情况下返回的表达式,以及与其进行比较的其他内容,如果它们相等则返回NULL
。你不要在它们之间写=
。
stock = nullif(@vstock, ''),
category_id = nullif(@vcategory_id, '');