帐户的c#数据库似乎有问题:
在数据库中,我收到错误消息:
错误1类型或命名空间名称'连接'无法找到 (您是否缺少using指令或程序集引用?)
我可能做错了什么?我想连接到帐户
中的数据库
代码1:
public void setCustAccounts(String custId) {
SQLConnection connect = acctsConnect();
Command statement = null;
ResultSet result = null;
String sql = "SELECT acctNo FROM Accounts Where Cid = '" + custId + "';";
try{
statement = connect.createStatement();
result = statement.executeQuery(sql);
while (result.next()){
result.getRow();
Account acct = new Account(result.getString("acctNo"));
custAccounts.add(acct);
}
}
finally {
connect.close();
}
}
代码: -
public SQLConnection acctsConnect(){
try{
Class.forName("C:\\ChattBankMDB.mdb");
}catch(ClassNotFoundException e){
Console.WriteLine("Error: " + e);
}
SQLConnection connect = null;
try{
connect = DriverManager.getConnection("C:\\ChattBankMDB.mdb");
}catch(SQLException e){
Console.WriteLine("Error: " + e);
}
return connect;
}
}
}
答案 0 :(得分:16)
using System.Data.SqlClient;
除上述行外,我们还需要检查实际的系统程序集引用是否存在。在我的情况下,我有指令,但assembly reference was missing.
要添加装配,我们可以执行以下操作。
浏览SqlClient的dll文件并添加。
- 或---更简单的方法是安装nuget包。
右键单击项目>管理Nuget包>搜索&安装'System.Data.SqlClient'
确保它与项目类型(核心/标准)兼容;
答案 1 :(得分:6)
您错过了代码中的using Directive语句。
using System.Data.SqlClient;
答案 2 :(得分:3)
正如Community Ans所说,您应该首先在项目中安装NuGet软件包。如果不这样做,则在添加使用时,Visual Studio的Intellisense仍然可以使用,但是您将无法在代码中使用其类型。
答案 3 :(得分:1)
我遇到了同样的问题,并且找到了上面显示的解决方案。
使用:
代替使用SQLiteConnection(YourPath)。 var db = new SQLite.SQLiteConnection(DataBasePath);
db.CreateTable<YourTable>();
答案 4 :(得分:0)
等待安装完成。完成。
来源YouTube视频:SqlConnection could not be found in the namespace | Fixed
答案 5 :(得分:0)
解决方案是在您的项目或解决方案中安装并使用 NuGet 中的新 System.Data.SqlClient 包。按照以下步骤安装软件包。
在 VS 的解决方案面板中右键单击您的解决方案。 从上下文菜单中,选择管理解决方案的 NuGet 包... 在 NuGet 包管理器窗口中,选择浏览选项卡。 在搜索框中键入 System.Data.SqlClient 并按 Enter。 查找 Microsoft 的 System.Data.SqlClient 包并选择它。 窗口右侧将打开一个小面板,其中包含解决方案中的项目列表。仅选择您希望安装 SqlClient 包的项目。 然后按安装按钮。等待安装完成。 NuGet 将安装选定的包及其所有依赖项。 现在返回到您的解决方案或项目并重建。您不会再收到错误消息。