C#使用OleDB操作ACCESS Provider=Microsoft.Jet.OLEDB.4.0;Data Source=” + NewFileName + “;User Id=uid;Jet OLEDB:Database Password=pwd;”;
完整错误信息: {System.InvalidOperationException: ConnectionString 属性尚未初始化。 在 System.Data.OleDb.OleDbConnection.PermissionDemand() 在 System.Data.OleDb.OleDbConnectionFactory.PermissionDemand(DbConnection outerConnection) 在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) 在 System.Data.OleDb.OleDbConnection.Open() 在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable) 在 Public.DB.GetDataTable(String Sql) 位置 Public\DB.cs:行号 44 在 MyIni.DBUpgrade1() 位置 Program.cs:行号 348 在 Program.Main() 位置 Program.cs:行号 738}
错误原因: ConnectionString 属性尚未初始化。只创建了Connection对象,没有设置Connection对象的ConnectionString 属性;
解决方法: 设置Connection对象的ConnectionString 属性,例如下面的代码:
Connection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + "这里是你的ACCESS数据库文件的路径"+ ";User Id=uid;Jet OLEDB:Database Password=pwd;";
如果数据 库没有密码,则不需要添加后面的“User Id=uid;Jet OLEDB:Database Password=pwd;”。