代码:string constr = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";
public void delete()
{
using (SqlConnection sqlconn = new SqlConnection(constr))
{
string detext = "delete from Students where StudentID='" + textBox1.Text + "'";
sqlconn.Open();
SqlCommand cmdup = new SqlCommand();
cmdup .CommandType =CommandType .Text ;
cmdup.Connection = sqlconn;
cmdup.CommandText = detext;
cmdup.ExecuteNonQuery();
sqlconn.Close();
MessageBox.Show("删除成功!");
(虽然有提示删除成功,但结束程序运行后打开数据库里面的数据还是没变,求教)
可能我没说清楚,我要连接的是数据库文件,直接连接数据库的话我自己就可以搞定了,代码就是你这样的
追答把cmdup.ExecuteNonQuery();
sqlconn.Close();
MessageBox.Show("删除成功!");改为
int i=cmdup.ExecuteNonQuery();
sqlconn.Close();
if(i>0)
MessageBox.Show("删除成功!");
else
MessageBox.Show("删除失败!");
你还是不用回答了,看着就知道你也不会的
请具体点,最后附上代码
追答Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True";
public void delete()
{
using (SqlConnection sqlconn = new SqlConnection(constr))
{
string detext = "delete from Students where StudentID='" + textBox1.Text + "'";
sqlconn.Open();
SqlCommand cmdup = new SqlCommand();
cmdup .CommandType =CommandType .Text ;
cmdup.Connection = sqlconn;
cmdup.CommandText = detext;
cmdup.ExecuteNonQuery();
cmdup.Close();
sqlconn.Close();
MessageBox.Show("删除成功!");
唉,我觉得你好扯淡,cmdup根本没有close方法
追答有 好不!
追问我用的是vs2005,cmdup打点之后根本就没出现这个方法,还有,我估计我的问题是数据连接酶打开,可就是不知道怎么改,我输个错误的学号它也会提醒删除成功
追答string detext = "delete from Students where StudentID='" + textBox1.Text + "'";
sqlconn.Open();
MessageBox.Show(sqlconn.State.toString());//看下连接状态
额,抱歉,我用的是
using(SqlConnection sqlconn = new SqlConnection(constr){}
using(SqlCommand cmdup = new SqlCommand()){}
没直接用过Closer();
不知道没这个
Open;那个无所谓的 只是想不出问题所在 纠结啊
int