回 帖 发 新 帖 刷新版面

主题:关于数据库的表名无效的问题

在用vb.net做数据库记录插入时,出现对象名无效的错误.

代码如下:Dim cmdtxt As String
        Dim cmd As New OleDb.OleDbCommand

        ''''连接数据库
        Call connectdatabase()

        '''''设置命令的字符串

        cmdtxt = "insert into test2  VALUES ('1', '2')"
        With cmd
            .Connection = conn
            .CommandText = cmdtxt
        End With
        Try
            cmd.ExecuteNonQuery()

            MsgBox("保存成功!")
        Catch exp As Exception

            MsgBox(exp.Message)
        End Try
        ''''断开连接,清空控件
        cmd = Nothing
        conn.Close()

其中连接数据库的过程为:
Sub connectdatabase()
        Const sconnection As String = "provider=sqloledb.1;" & _
                                                 "password=888888;" & _
                                                 "user id=sa;" & _
                                                 "data source=(local);" & _
                                                 "data base=ahig"


        Try
            If conn.State = ConnectionState.Closed Then
                conn.ConnectionString = sconnection
                conn.Open()
                MsgBox("database connect is succeessful")
            End If

        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

结果运行的时候出现"对象名'test2'无效"的错误,其中,test2为要插入数据的表名.数据库连接已经成功了.试验了一下,修改cmdtxt为select语句等都为出现相同的错误.

数据库中test2表的所有者为dbo.

实在不知道是为什么,所以在此求救.希望各位高手赐教.
注:我的数据库是附加的,以前数据库中有一个lj2的用户.现在给删除了.不知道是不是这个原因,但是我查看过表test2和其他的表,所有者都是dbo.不知道问题出在哪里?

回复列表 (共5个回复)

沙发

insert into test2(字段名写上,保持对应)VALUES ('1', '2')",然后看看字段是不是都是字符串类型的,试试看!

板凳

longlong16的方法试过,还是一样的.

3 楼


[em1]呵呵,问题自己解决了
原来是自己的连接字符串有问题.
Const sconnection As String = "provider=sqloledb.1;" & _
                                                 "password=521125;" & _
                                                 "user id=sa;" & _
                                                 "data source=(local);" & _
                                                 "data base=ahig"
最后一行的data base=ahig,改为database=ahig(中间的空格去掉),就可以了.

但是这个连接字符串是我从书上看来的啊,而且连接数据库也没报错,显示连接成功了啊.
真是奇怪啊

再次感谢"longlong16"的帮助.希望此贴的朋友能从中吸取教训哟

4 楼

Database或者Data Source

5 楼

呵呵,我也没有看到,压根没有注意看连接字符串部分,下次细心点了,呵呵...

我来回复

您尚未登录,请登录后再回复。点此登录或注册