Office中国论坛/Access中国论坛

标题: 为什么只能查询数字字段 [打印本页]

作者: LIU31174    时间: 2004-3-16 23:51
标题: 为什么只能查询数字字段
Public Function login() As Boolean
    Dim rst As New ADODB.Recordset
    Dim strSQL As String
    Dim IdName As String
    Form_窗体2.用户名.SetFocus
    IdName = Form_窗体2.用户名.text
    strSQL = "SELECT * FROM 员工表 WHERE 姓名 = " & IdName
    rst.Open strSQL, CurrentProject.Connection, adOpenStatic

    If rst.RecordCount > 0 Then
        If rst("密码") = Me.密码输入框 Then login = True
    End If

End Function
系统提示至少有一个参数未指定
把查询项“姓名“改成ID(长整型)就可以
另立即窗口:
?currentproject.Connection
Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=I:\珠宝数据库\珠宝数据库1.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database=D:\PROGRA~1\MICROS~4\Office\SYSTEM.MDW;Jet OLEDB:Registry Path="";Jet OLEDBatabase Password="";Jet OLEDB:Engine Type=5;Jet OLEDBatabase Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDBon't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False


许多的Jet OLEDB是提供者特有的动态属性吗,属性顺序如何排列
谢谢

作者: zhengjialon    时间: 2004-3-17 00:56
Public Function login() As Boolean
    Dim rst As New ADODB.Recordset
    Dim strSQL As String
    Dim IdName As String
    Form_窗体2.用户名.SetFocus
    IdName = Form_窗体2.用户名
    strSQL = "SELECT * FROM 员工表 WHERE 姓名 = '" & IdName & "'"
    rst.Open strSQL, CurrentProject.Connection, adOpenStatic

    If rst.RecordCount > 0 Then
        If rst("密码") = Me.密码输入框 Then login = True
    End If

End Function

改以上试试,文本型要用引号的。



2。Jet OLEDB是提供者特有的动态属性可以查看帮助,顺序记得好像没关系,不分的。
作者: LIU31174    时间: 2004-3-17 23:37
不行啊,老大。改完以后rst.RecordCount =0
除非按原来的代码,使用用文本框输入用户名时直接在文本框中加双引号才能用
我用access2000,怎么办啊??


[此贴子已经被作者于2004-3-17 15:39:52编辑过]


作者: zhengjialon    时间: 2004-3-17 23:48
这要原程序调试才行,传上来,其实论坛里有下载的,为什么不下载一个来看一下?




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3