JavaScript 函数,用于使用具有多个参数的记录集查询 MS Access DB
JavaScript function to query a MS Access DB using Recordsets with multiple parameters
我有一个前端HTML页面,它正在查询MS Access数据库。
.HTML:
<input class="textbox" id="searchValue" maxlength="100" name="KeywordSearch" onclick="this.value='';" size="50" type="text" value="Enter Your Keyword Here" />
<input class="textbox" id="ForCLNo" name="CLNum" type="text" onclick="this.value='';" size="25" type="text" value="CL Number"/>
<input class="button" name="Search" onclick="searchEngineSearch();" type="button" value="Search" /></p>
想要执行此查询:
SELECT * FROM MasterTable where CLNo = test1 AND Query = test2;
对于查询,SELECT * FROM MasterTable where Query LIKE test2
,我创建了 ADODB 对象,如下所示:
var adVarWChar = 202;
var adParamInput = 1;
var pad = "C:''Users''Rik''Desktop''Project''MyTable.accdb";
var cn = new ActiveXObject("ADODB.Connection");
var strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + pad;
cn.Open(strConn);
var cm = new ActiveXObject("ADODB.Command");
cm.ActiveConnection = cn;
cm.CommandText = "SELECT * FROM MasterTable where Query LIKE test2";
cm.Parameters.Append(cm.CreateParameter(
"test2",
adVarWChar,
adParamInput,
255,
"%" + document.getElementById("searchValue").value + "%"));
var rs = cm.Execute();
并获得正确的结果。
不确定如何重写 cm.Parameters.Append(cm.CreateParameter()) 函数以在 SQL 查询中合并多个 WHERE 条件 [ SELECT * FROM MasterTable where CLNo = test1 AND Query = test2;
]。
请帮忙:)
您已经在参数集合中创建了一个参数...您只需要再创建一个:
cm.CommandText = "SELECT * FROM MasterTable where Query LIKE test1 OR Query LIKE Test2";
cm.Parameters.Append(cm.CreateParameter(
"test1",
adVarWChar,
adParamInput,
255,
"%" + document.getElementById("searchValue").value + "%"));
cm.Parameters.Append(cm.CreateParameter(
"test2",
adVarWChar,
adParamInput,
255,
"%" + document.getElementById("searchValue").value + "%"));
var rs = cm.Execute();
cm.Parameters
是一个集合,这意味着它能够容纳任何合理数量的项目类型。 对于上面的每段参数代码,将新创建的参数追加到集合中。然后,整个集合用于解析 SQL 语句。
相关文章:
- 用javascript记录传递给回调的参数的约定是什么
- 记录中间功能可选参数
- JavaScript 函数,用于使用具有多个参数的记录集查询 MS Access DB
- 如何控制台记录我传递到此测试函数中的每个参数
- 将对象数组记录为 JSDoc 中回调函数的参数
- 如何在函数参数中使用循环并将结果记录到控制台
- 使用restangular在angularJs上基于url参数检索记录
- 将display标记表列中的参数传递为隐藏,始终获取第一条记录的值
- 将状态添加到特定搜索参数的历史记录中
- 使用Google闭包编译器记录回调参数
- 如何在JSDoc中将对象数组记录为参数
- 通过id和其他参数查找Ember-data记录
- 当作为参数传递给setTimeout回调函数时,全局变量被记录为未定义
- 当我推送一个新的URL到主干.历史记录,查询参数保留
- 猫鼬查找具有多个条件的记录并检查请求参数是否为空
- 如何记录具有已知参数类型的可变长度的参数列表
- aurelia路由器-传递一次参数(参数不会记录在浏览器历史记录中)
- 如何在Ember中通过id和查询参数找到记录
- grocJavaScriptdocumentor-用于记录所有子目录的参数
- 如何记录JsDoc中具有多个参数顺序选项的函数