并且SessionId是自动增量的。 当我尝试添加会话时:
srDataAccessManager.addSession = function(title,speakerId,cbfSuccess,cbfError){
_makeSQLRequest("INSERT INTO dbo.Session (Title, SpeakerId, SessionState) values(" + title+ "," + speakerId+ ",'Created')",cbfSuccess,cbfError);
}
function _makeSQLRequest(sqlString,cbfSuccess,cbfError){
sql.close();
sql.connect(config,(err)=>{
if(err)
cbfError(err);
else{
var request = new sql.Request();
request.query(sqlString, (err,result) =>
{
if(err)
cbfError(err);
else
cbfSuccess(result);
});
}
});
}
我收到此错误:
我不明白这个错误的来源。是因为我没有在插入字符串中添加id吗?我没有输入id,因为我认为当SMMS处理id时我不需要任何ID。我已经检查了输入的数据类型,它是一个字符串和一个int,所以我怀疑它是因为数据类型。有什么建议吗?
答案 0 :(得分:0)
您的INSERT
声明对我来说不对。我相信你应该在Title
参数周围加上单引号:
_makeSQLRequest("INSERT INTO dbo.Session (Title, SpeakerId, SessionState)
values('" + title+ "'," + speakerId+ ",'Created')",cbfSuccess,cbfError);
请注意第一个结束双引号之前的单引号,以及第一个逗号之前的单引号。