我是C#和数据库的新手。我正在使用CreateConnection()
方法连接到本地数据库服务器。我正在尝试将数据插入数据库表。当我使用选择查询从SQL Server Management Studio中读取此数据时,我无法从表中获取数据。但是,当我从C#程序执行sql查询时,我能够读取此数据。我怀疑我的C#程序正在访问的表和在SQL Server Management Studio中创建的表是否不相同,即使它们具有相同的路径和名称也是如此。
的代码CreateConnection
:
public void CreateConnection()
{
Console.WriteLine("CreateConnection");
myConnection = new SqlConnection("Data Source=(local); Database=MyServerDB;Server=ATLW732FV000169\\SQLEXPRESS;Integrated Security=True; connection timeout=30");
{
try
{
myConnection.Open();
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
}
}
SQL查询代码:
primary_cmd = "INSERT INTO flightData (flightNum, Country) VALUES ('555','xyz');"
using (SqlCommand myCommand = new SqlCommand(primary_cmd, myConnection))
{
try
{
int rows = myCommand.ExecuteNonQuery();
}
catch (SqlException e)
{
Console.WriteLine(e);
}
}
将数据插入数据库时,我没有任何异常。当我在SQL Server Management Studio中运行相同的插入查询时,它可以正常工作并将数据插入表中。另外,我能够从C#程序的表中读取插入的数据。看起来C#正在连接到某个临时数据库表并插入其中。
听起来您的连接字符串是错误的,因为它没有建立您期望的连接。其他一切似乎都正确。我认为我从未在同一连接字符串中看到过DataSource =(local)和Server =...。也许尝试类似:
new SQLConnection("Persist Security Info=False;Integrated Security=true;Initial Catalog=MyServerDB;server=(local)")
或者:
new SQLConnection("SERVER=ATLW732FV000169\\SQLEXPRESS;Trusted_Connection=Yes;DATABASE=MyServerDB")
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句