.Net程序中操作数据库不起作用了
建立的C#Windows窗体应用程序,为一个按键响应消息写入如下代码:
//打开数据库,并清除指定表中数据
String connStr = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();//打开数据库
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "delete from Numbers";//清除表中的信息
cmd.ExecuteNonQuery();
}
}
其中的“ConnStr”来自配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="ConnStr"
connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Phone2.mdf;
Integrated Security=True;User Instance=True"/>
</connectionStrings>
</configuration>
在程序主函数内添加:
//查找数据库地址
string dataDir = AppDomain.CurrentDomain.BaseDirectory;
if (dataDir.EndsWith(@"\bin\Debug\") || dataDir.EndsWith(@"\bin\Release\"))
{
dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
AppDomain.CurrentDomain.SetData("DataDirecrory", dataDir);
}
运行无错误,可是运行结束之后数据库中的值仍然存在,(即执行的删除表中的数据没有起作用)
------解决方案--------------------是不是把其它数据库的内容删掉了。bin\debug或者bin\release下的和项目跟目录下的数据库都看看。
------解决方案--------------------是不是你每次编译覆盖了数据库文件。
------解决方案--------------------设断点啊,总体上调试一下