提供程序无法确定字符串值,例如,刚刚创建了行.奥立


 public void SetConnection(string text1, string text2, string text3, string text4, string text5, string text6, string text7)
    {
        string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source= c:\Users\Clients Information pats.mdb";

        database = new OleDbConnection(connectionString);
        database.Open();
    }
data1 = DataAccess.DatabaseTables("SELECT * from [CLIENTS]", DataAccess.database);
 public DataTable DatabaseTables(string QueryString, OleDbConnection DataConnection)
    {
        OleDbCommand SQLQuery = new OleDbCommand();
        DataTable data = null;
        SQLQuery.Connection = null;
        OleDbDataAdapter dataAdapter = null;
        SQLQuery.CommandText = QueryString;
        SQLQuery.Connection = DataConnection;
        data = new DataTable();
        dataAdapter = new OleDbDataAdapter(SQLQuery);
        dataAdapter.Fill(data);
        return data;
    }

在标题中列出了一个奇怪的错误。Setconnection设置我的连接字符串和连接ok。然后'data1'调用DatabaseTables函数,该函数在'dataAdapter.Fill(data);'处调用异常。我想问题可能出在我的电脑上。mdb将无法在2013年在我的机器上打开,因为它是一个较早的版本。我安装了access 2007运行时。打开它,它说它是只读的,我需要改变这个属性。然后我试图打开access 2013作为管理员,office 2013自己做了一些重新配置,现在这个mdb文件总是试图在access 2013中打开。我现在将尝试重新安装access 2007。是否有可能我需要卸载访问2013,或者这可能不是访问问题,但可能是我的代码或mdb本身的问题。我从服务器上复制了这个mdb文件,它在那台机器上访问2007打开但它试图增强它,因为它显然是一个更早的版本

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source= u:\Clients Information pats_30may13.accdb;Jet OLEDB:Database Password=MyDbPassword;";

我将源访问数据库升级为accdb格式,并确保我可以在我自己的计算机上打开这个数据库,而不是在服务器上。我收到了一个通知,说升级过程中出现了一些错误,但看起来还好。然后我使用了上面的连接字符串这就解决了问题。

相关内容

  • 没有找到相关文章

最新更新