关于使用oledb连接access数据库的问题。
使用oledb连接access数据库
System.Data.OleDb.OleDbConnection adoConn;
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\test\test.mdb";
Conn=new OleDbConnection(strConn);
结果在运行时提示错误:
Additional information: Format of the initialization string does not conform to specification starting at index 47.
上述的连接字符串如果在VB中使用ado的话是没问题的。请问是什么原因呢?还有我看MSDN中的例子也是一样的,到底问题出在什么地方呢?
问题点数:100、回复次数:7Top
1 楼zoji(佐奇)回复于 2003-08-04 16:58:07 得分 15
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\test\\test.mdb
\后面再加一个\就OK了。
Top
2 楼realMAX(♂ 困惑的浪漫 ♀)回复于 2003-08-04 17:02:35 得分 5
在cSharp里面的路径是需要两个\\的。Top
3 楼jinye(锦业)回复于 2003-08-04 17:11:48 得分 20
strConn=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\test\test.mdb";
或
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\test\\test.mdb";
Top
4 楼ljsheng()回复于 2003-08-04 17:19:45 得分 20
字符串中的反斜杠是有特殊意义的,用来屏蔽某些字符的特殊意义。因此如果要打印一个反斜杠的话,实际上要写两个反斜杠。Top
5 楼hq1305018(跃强)回复于 2003-08-04 17:22:41 得分 25
在C#中字符串中的'\'与后面的字符组成转义字符,如果想禁止字符串将'\'解释成转义字符就在字符串前加@,或者用连续两个'\'。
另外,你的连接字符串会不会有其它的问题,如果你改完了还有问题,应该检查用户名和密码的问题。Top
6 楼panyee(快乐王子)回复于 2003-08-04 17:23:04 得分 15
c#中用
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\\test\\test.mdb";
vb.net中才用
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\test\test.mdb"
(没有分号)Top
7 楼sinny(天空之城)回复于 2003-08-04 17:24:31 得分 0
呵呵,明白了。Top



