大家好,请教!Data1.RecordSource = "select * from 个人资料 where 学号 =  '" + CStr(xh) + "'"Text2.Text = Data1.Recordset.Fields("姓名")
Text3.Text = Str(Data1.Recordset.Fields("年龄"))
Text4.Text = Data1.Recordset.Fields("籍贯")
Text5.Text = Data1.Recordset.Fields("婚否")
上述代码中xh是个长整型变量,由text1赋值。我的意思是将符合查询条件的记录的字段值显示在Text2等中。上面CStr是一个转换成字符串的函数。刚开始我用的Data1.RecordSource = "select * from 个人资料 where 学号 =  '" + xh + "'"也不行,运行时总是说:实时错误,’91‘:对象变量或者with块变量未设置不知为什么,求助了!
 
 
 2005-4-26 8:16:00          
 

解决方案 »

  1.   

    对象变量或者with块变量未设置
    //这不是SQL语句的问题。
    需要看其他地方代码另外,data控件已经过午了,没必要使用了
      

  2.   

    该控件没有与数据库建立连接,还是建议楼主用ado控件
      

  3.   

    请问楼主,你在‘个人资料’表中‘学号’字段用的是什么类型的?如果‘学号’字段用与xh一样的类型
    则:Data1.RecordSource = "select * from 个人资料 where 学号 = xh 就可以了。
      

  4.   

    谢谢大家!其他地方代码我看了,没问题呀。Data1控件已与数据库建立连接了,我是在
    Data1控件databasename属性里设置的。另外我还试过adodc控件,还是相同的问题。运行时总是说:实时错误,’91‘:
    对象变量或者with块变量未设置我查了也不知啥原因?调试时,鼠标老停在Text2.Text=Data1.Recordset.Fields("姓名")
    上,什么原因呀?请教了,谢谢!学号是长整型呀,Data1.RecordSource  =    "select  *  from  个人资料  where  学号  =  xh " 这样不行的,因为xh是一个变量。
      

  5.   

    谢谢大家!其他地方代码我看了,没问题呀。Data1控件已与数据库建立连接了,我是在
    Data1控件databasename属性里设置的。另外我还试过adodc控件,还是相同的问题。运行时总是说:实时错误,’91‘:
    对象变量或者with块变量未设置我查了也不知啥原因?调试时,鼠标老停在Text2.Text=Data1.Recordset.Fields("姓名")
    上,什么原因呀?请教了,谢谢!学号是长整型呀,Data1.RecordSource  =    "select  *  from  个人资料  where  学号  =  xh " 这样不行的,因为xh是一个变量。
      

  6.   

    我建议用ado控件 建立数据库连接比data控件效果要好
      

  7.   

    这样写
    如果学号字段为数字型
    Data1.RecordSource  =    "select  *  from  个人资料  where  学号  = " & str(xh)
    如果学号字段为文本型
    Data1.RecordSource  =    "select  *  from  个人资料  where  学号  = '" & str(xh) & "'"
      

  8.   

    谢谢大家!我已经解决了,这样就行了。
    Adodc1.RecordSource = "select * from 个人资料 where 学号 =" & CStr(xh) & ""
    以前还是格式没写对呀
      

  9.   

    谢谢大家!我已经解决了,这样就行了。
    Adodc1.RecordSource = "select * from 个人资料 where 学号 =" & CStr(xh) & ""
    以前还是格式没写对呀