首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#打开MDB数据有关问题

2013-07-20 
C#打开MDB数据问题求救这个《库存_be.mdb》数据库是有其它N个客户端链接的,但是我用C#再链的时候就出错,用其

C#打开MDB数据问题求救
这个《库存_be.mdb》数据库是有其它N个客户端链接的,但是我用C#再链的时候就出错,用其它客户端ADO方式链接没问题,
Error:   Microsoft Jet 数据库引擎打不开文件'\\server\databasen$\库存_be.mdb'。  它已经被别的用户以独占方式打开,或没有查看数据的权限。
[解决办法]
楼主,把数据库访问相关代码贴过来看下
[解决办法]
这个不好说,也许用某种语言底层共享了连接,支持多个客户端同时连接。

你可以用那种语言写一个代理,或者升级到sql server。
[解决办法]
访问的数据库的代码上下看看
[解决办法]
你需要把它放在设置了“windows的局域网共享”的文件夹下。


[解决办法]
access不是多用户数据库,所以同时访问应该不可靠,
[解决办法]


 string  MyConnctionString="";
 OleDbConnection  MyConnection = new OleDbConnection(MyConnctionString);
 public DataTable ExecReader_Sql(string strCmdText)
        {
            OleDbCommand oleDbCommand = new OleDbCommand();
            oleDbCommand.CommandTimeout = 7200;
            OleDbDataAdapter oleDbDataAdapter = new OleDbDataAdapter();
            DataTable dtRet = null;
            try
            {
                oleDbCommand.Connection = MyConnection;
                oleDbCommand.CommandText = strCmdText;
                oleDbDataAdapter.SelectCommand = oleDbCommand;
                if (MyConnection.State == ConnectionState.Closed)


                {
                    MyConnection.Open();
                }
                dtRet = new DataTable();
                oleDbDataAdapter.Fill(dtRet);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                oleDbDataAdapter.Dispose();
                oleDbCommand.Dispose();
            }
            return dtRet;
        }


连接字符串格式化函数
        #region  Oledb数据库连接字符串格式化
        /// <summary>
        /// Oledb数据库连接字符串格式化
        /// </summary>
        /// <param name="connectionString">Oledb数据库完整路径</param>
        /// <returns>Oledb数据库连接字符串</returns>
        public static string OledbConnStringFormat(string strOledbName)
        {
            string strOledbDir = System.IO.Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName) + @"";
            return String.Format("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = {0};", strOledbDir+strOledbName);
        }


        #endregion

热点排行