C# 连接Access数据时总报找不到dbo.mdb的问题(连接数据库access denied for user)这样也行?

随心笔谈2年前发布 admin
194 0 0

文章摘要

这篇文章讲述了一个在SQL Server环境中遇到的问题,即连接字符串中包含“Provider=Microsoft.Jet.OLEDB.4.0; Data Source=local.mdb;”,但系统未能找到“dbo.mdb”数据源。通过调试发现,问题源于schema命名规则:SQL Server通常使用“dbo.xxx”格式命名表和数据库,而如果在Access中也采用类似格式写入连接字符串,SQL Server会报错。文章建议修改SQL语句,去掉“dbo.”部分,从而解决了问题。总结来看,文章强调了正确理解数据库命名规则对解决此类连接问题的重要性。


单步跟踪调试发现Connection中的连接字符串也是

”Provider=Microsoft.Jet.OLEDB.4.0; Data Source=local.mdb;”,

根本没有dbo.mdb的事。后来查过排查发现是schema的问题。

SQL Server中有schema的概念所以我们一般都习惯写成dbo.xxxTable,所以如果你要是也在Access中这样写的话,就会报如上找不到dbo.mdb的问题。修改SQL语句,去掉dbo后,问题解决。

您可能感兴趣的文章:C# Access数据库增删查改的简单方法c#连接access数据库操作类分享ASP.net(c#)用类的思想实现插入数据到ACCESS例子ACCESS的参数化查询,附VBSCRIPT(ASP)和C#(ASP.NET)函数C#动态创建Access数据库及表的方法C#数据库操作类AccessHelper实例asp.net(C#) Access 数据操作类利用C#远程存取Access数据库c# 连接access数据库config配置C#对Access进行增删改查的完整示例

© 版权声明

相关文章