请各位高手帮我看一下,我以在SQL SERVER中建立了一个以系统日期为表名的表,现在想在VB界面下实现向表填加数据。可是实现不了,不知错在那了。
Option Explicit
Dim conn As New ADODB.Connection
Dim rs As New ADODB.RecordsetPrivate Sub Command1_Click()
rs.AddNew
rs.Fields("id").Value = Text1.Text
rs.Fields("num").Value = Text2.Text
rs.Update
End SubPrivate Sub Form_Load()
conn.ConnectionString = "Driver={sql server};server=hh-bfa849b285ca;uid=sa;pwd=;database=yhm"
conn.ConnectionTimeout = 30
conn.Open
rs.Open "declare @dt varchar(10) select @dt=convert(varchar(10),getdate(),120) declare @s varchar(200) set @s='select * from ['+ @dt +']'", conn, adOpenDynamic, adLockOptimistic, adCmdTextText1.Text = ""
Text2.Text = ""End Sub

解决方案 »

  1.   

    你想查找出记录集,需要写上"declare @dt varchar(10) select @dt=convert(varchar(10),getdate(),120) declare @s varchar(200) set @s='select * from ['+ @dt +']' exec(@s)"如果你想更新记录集不能这样使用你可以把日期找出然后再用open
    strsql = "'select * from ['+ @dt +']'"
    adors.open strsql,conn, adOpenDynamic, adLockOptimistic
      

  2.   

    我试着好像以数字开头的表都不能执行SQL语句
      

  3.   

    改为:adOpenStatic, adLockOptimistic
      

  4.   

    Anylib 组件,自由界面和报表的完美组合
    http://www.anylib.com