sql – 使用vba在ms access 2003中的参数化查询
发布时间:2020-12-12 16:22:17 所属栏目:MsSql教程 来源:网络整理
导读:好.我想使用参数化查询来避免在我的数据中处理嵌入的双引号或单引号(“或”). 举个简单的例子,VBA代码对于参数化的版本是什么样的? Dim qstr as StringDim possiblyDangerousString as Stringqstr = "SELECT MyTable.LastName from MyTable WHERE MyTable.La
好.我想使用参数化查询来避免在我的数据中处理嵌入的双引号或单引号(“或”).
举个简单的例子,VBA代码对于参数化的版本是什么样的? Dim qstr as String Dim possiblyDangerousString as String qstr = "SELECT MyTable.LastName from MyTable WHERE MyTable.LastName = '" & possiblyDangerousString & "';" 我没有从我的代码中剪切和粘贴它(现在在另一个盒子上),所以可能会有拼写错误. 一旦我弄清楚这个简单的例子,我需要转向更复杂的语句(多个参数和连接). 解决方法在VBA中,您可以使用以下内容:Dim db As DAO.Database Dim qdf As QueryDef Dim strSQL as String Set db = CurrentDb strSQL = "PARAMETERS txtLastName Text(150); " _ & "SELECT LastName FROM MyTable " _ & "WHERE LastName=txtLastName" ''Create a temporary query Set qdf = db.CreateQueryDef("",strSQL) qdf.Parameters!txtLastName = Trim(possiblyDangerousString) 这个例子用处不大,因为你现在要对查询做些什么呢?请注意,您可以存储参数查询并在VBA中分配参数.另请注意,备注字段会成为问题,因为参数只能接受255个字符. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |