Javascript ADO 记录集打开方法不起作用.参数化查询
Javascript ADO recordset open method not working. Parametrized queries
我正在创建一个网页,并有一些javascript代码将网页中的一些信息插入MS access数据库。我正在使用 ADO 连接和记录集,但打开方法有问题。
这是我遇到问题的一段代码
var name =document.StatusReports.empname.value;
var query = "Select * From reportForm Where EmployeeName =" + name;
alert(query);
if(adoRS.Open(query, adoConn, 1, 3));
名称只是一个变量,它将保存文本框的值。(这有效)如果我使用警报(查询),一切都显示得很好:Select * From reportForm Where EmployeeName = kevin
好像串联工作正常。但是,如果我尝试使用该查询打开连接,则会收到此错误:
SCRIPT3600: No value given for one or more required parameters.
好像它不认识串联。
注意:它无需串联即可工作。例如,如果我硬编码一个值:
var query = "Select * From reportForm Where EmployeeName = kevin";
但这当然不是目的。
更新:我认为问题是查询没有参数化。我记得在 Java 中这发生在我身上,但我参数化了查询,我会完成的。不确定如何使用 javascript 参数化查询
以下查询将在 Access 中生成错误,因为它尝试比较两个字段名称:"EmployeeName"和"kevin":
Select * From reportForm Where EmployeeName = kevin
以下查询不应产生错误,因为它将"EmployeeName"与字符串值"kevin"进行比较:
Select * From reportForm Where EmployeeName = 'kevin'
将搜索字符串name
放在引号中,如下所示:
var query = "Select * From reportForm Where EmployeeName ='" + name + "'";
相关文章:
- setTimeout刷新,毫秒参数不起作用
- 角度限制过滤器's的第二参数“s”;“开始”;在Angular 1.3中似乎不起作用
- 参数使用AJAX的PHP POST不起作用
- UI 路由器参数 URL 不起作用,只是重定向到 /
- JavaScript参数对象不起作用
- 筛选器's的第二个参数不起作用
- 使用输入名称参数在jQuery中取整不起作用
- 在Angular Directive中传递函数作为参数不会;不起作用
- 如果我移除animateTo参数,.remove()回调函数将不起作用
- .eq()参数在循环中不起作用
- 谷歌地图API v3-缩放参数don'不起作用
- UIWebView调用带有参数的JS获胜'不起作用
- JavaScript - 在函数内连接 2 个参数不起作用
- 参数在使用 Google Apps 脚本的 Google 云打印中不起作用
- 参数在 $() - jQuery 之外不起作用
- 为什么传入的参数在一个地方有效,而在另一个地方不起作用
- jQuery 参数不起作用
- 函数在将参数传递给 addEventListener 时不起作用
- angularjs路由不起作用参数'CatCtrl'不是函数,未定义
- Javascript ADO 记录集打开方法不起作用.参数化查询