我已经制作了一个代码,可以在执行软件的文件夹中自动创建数据库。数据库创建成功,但是当我为连接创建对象时,会显示以下异常:
System.Data.SqlClient.SqlException(0x80131904):尝试与SQL Server建立连接时出现网络错误或特定实例。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)---> System.ComponentModel.Win32Exception(0x80004005):找不到指定的文件
在这一行:
con.Open();
但我认为问题出在这个连接声明上:
static SqlConnection con = new SqlConnection(
"Server=localhost;Database=AppDB.sqlite;");
我做错了什么?
更新详情:
SqlCommand command = new SqlCommand(@"INSERT INTO Team (name,code, shortName, squadMarketValue,
crestUrl, link_self, link_fixtures, link_players, caption) VALUES (@name,
@code,@shortName,@squadMarketValue,@crestUrl,@link_self,@link_fixtures,
@link_players,@caption)", con);
如何看待我正在使用参数化查询,如果我使用此对象:
static SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=SoccerForecast.sqlite;Version=3;");
con
变量用红色加下划线,编译器告诉我:
无法在SqlConnection中转换SqliteConnection
答案 0 :(得分:2)
您的连接错误。您没有在问题中指定要尝试连接的数据库类型。当你使用sql连接对象时,会提到SQLite。 sql连接对象用于连接ms sql server数据库。如果您确实要连接到ms sql server数据库,则需要更改连接字符串以提供用户名/密码或Trusted_Connection=True
以使用您的Windows帐户。
但是,如果您尝试连接的数据库是SQLite DB,则必须使用其他连接对象。 This和this SO question有关于可用库和示例的答案,这些库和示例将说明如何创建与SQLite数据库的连接。
当您需要生成连接字符串时,网站connectionstring.com也是一个很好的资源。