gpt4 book ai didi

javascript - 如何使用 Nodejs 将 json 数据插入 MariaDB?

转载 作者:搜寻专家 更新时间:2023-11-01 00:09:30 26 4
gpt4 key购买 nike

我正在使用 NodeJs 将 JSON 数据插入 MariaDB。插入数据时出现以下错误。请告知导致错误的原因。实际上 Column data1 没有空值或 null 值。为什么我会低于错误?

{ [Error: Column 'data1' cannot be null] code: 1048 }

表结构

CREATE TABLE `from_excel` (
`ID` INT(11) NOT NULL AUTO_INCREMENT,
`data1` VARCHAR(50) NULL DEFAULT NULL,
`data2` VARCHAR(100) NULL DEFAULT NULL,
PRIMARY KEY (`ID`)
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB
;

我用来插入数据的代码。

var Client = require('mariasql');
var c = new Client({
host : 'localhost',
user : 'xxxx',
password : 'xxxx',
db : 'Metrics'
});




const workbook = xlsx.readFile(__dirname + '/test.xlsx');
const worksheet = workbook.Sheets[workbook.SheetNames[0]];
var json=xlsx.utils.sheet_to_json(worksheet);
console.log(json.length);
for(var i=0;i<json.length;i++)
{
var post = {data1: json[i].data1, data2: json[i].data2};

var sql = c.query('INSERT INTO elements_from_excel (data1,data2) VALUES (?,?)', post, function(err, result) {
console.log(sql);
if(err){console.log(err);}
else {console.log("success");}

});

}
c.end();

最佳答案

可能发生的是正在运行的结果插入语句如下:

INSERT into from_excel (data1, data2) VALUES (`data1` = \'data1value\', `data2` = \'value\', ?)

尝试用以下内容替换查​​询字符串:

var post  = {data1: json[i].data1, data2: json[i].data2};

var sql = c.query('INSERT INTO from_excel SET ?', post, function(err, result) {
console.log(sql);
if(err){console.log(err);}
else {console.log("success");}

关于javascript - 如何使用 Nodejs 将 json 数据插入 MariaDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40936517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com