C# SQL 删除查询的数据

比如:1、先按字段查询;2、删除查询的结果

话说楼上的方法比较水啊,你这个数据库的连接,打开了没有关啊,资源一直占在那里。另外你的SQL语句也有问题啊。。。


使用using的方法来建立数据库的连接,在使用完资源之后,会自动关闭。

class SqlHelper
    {
        public static DataTable ExecutDataTable(string sql, params SqlParameter[] parameter)
        {
            using (SqlConnection conn = new SqlConnection(这个位置写连接字符串))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    cmd.Parameters.AddRange(parameter);

                    SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                    DataSet dataset = new DataSet();

                    //在dataset中添加刷新行
                    adapter.Fill(dataset);
                    return dataset.Tables[0];
                }
            }
        }
        }
        
                public Employee GetById(Guid id)//传入的参数,你也可以自己写
        {
            DataTable table = SqlHelper.ExecutDataTable("select* from tbl_Employee where Id=@id",
                new SqlParameter("@id", id));
            if (table.Rows.Count <= 0)
            {
                return null;
            }
            else if (table.Rows.Count == 1)
            {
                return ToModel(table.Rows[0]);
            }
            else
            {
                throw new Exception("查找出错");
            }
        }

这里的查找,是按照数据库的ID字段查找的,因为我的数据库定义的ID字段是唯一的,所以我有个判断有没有查找到重复的。


删除的方法如下

        public void DeleteById(Guid id)
        {
            
            SqlHelper.ExecuteNonQuery("Delete from tbl_Operator where Id = @id",
                new SqlParameter("@id", id));
        }
class SqlHelper
{
            public static int ExecuteNonQuery(string sql,params SqlParameter[] parameter) 
        {
            using (SqlConnection conn= new SqlConnection(连接字符串))
            {
                conn.Open();
                using (SqlCommand cmd= conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    cmd.Parameters.AddRange(parameter);
                    return cmd.ExecuteNonQuery();
                    //ExecuteNonQuery对连接执行SQL语句并返回受影响行数
                }
            }
        }
}

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-30
我这个是C#,ASp.net的:
查询后显示在Gridview控件里:
SqlConnection Conn = BaseClass.DBCon();
Conn.Open();
string mystr = "select * from tb_AddBook where textbox.text";
DataSet mydt = new DataSet();
SqlDataAdapter mysda = new SqlDataAdapter(mystr, Conn);
mysda.Fill(mydt);
GvNavol.DataSource = mydt;
GvNavol.DataBind();
删除代码:
protected void btnDelete_Click(object sender, EventArgs e)
{
SqlConnection conn = BaseClass.DBCon();
conn.Open();
string str = "delete tb_AddBook where BookName='"+ddlBookName.SelectedValue+"' and BookAuthor='"+ddlBookAuthor.SelectedValue+"'";
BaseClass.OperateData(str);
Response.Write("<script>alert('删除成功!')</script>");
}本回答被网友采纳

C# SQL 删除查询的数据
public void DeleteById(Guid id) { SqlHelper.ExecuteNonQuery("Delete from tbl_Operator where Id = @id", new SqlParameter("@id", id)); }class SqlHelper{ public static int ExecuteNonQuery(string sql,params SqlParameter[] parameter) { using (SqlConnection conn= new...

c#删除SQL数据库的数据,无论删除是否成功cmd.ExecuteNonQuery()的...
第一句你已经执行了删除,那么Response.Write参数中又去删除了一次,这样就造成了你先删除,实际上程序已经返回了受影响的行数,只是你没有接收到。可以修改为以下两种方法:1,先使用变量接收到受影响的行数,再返回变量的值 int count=cmd.ExecuteNonQuery();Response.Write(count);2,直接返回 Response....

C#删除SQL中的数据,能删除,但是运行时出错,求指教,我是新手。。。_百度...
SqlCommand cm= new SqlDbCommand ( del, conn) ;\/\/从数据库删除记录 cm.ExecuteNonQuery ( ) ;这样就可以了。如果你一定要通过适配器这样的方式来删除,那么我在评论里给你个链接,你可以去看下,作为参考,能帮到你的。

C#删除sql数据库中指定的数据
你是先删的listbox中的选中项,还是先删的数据库中的记录?如果是先删的listbox中选中项,那么 string sql = "delete from 项目基本信息数据 where 项目字符名称='" + listBox2.SelectedItem + "'";listbox2.SelectedItem就是空的吧,既然是空的,也就无法删除数据库中的记录了。可以试试 ...

C# 中清空sql数据库中的数据
SqlConnection sqlcon=new SqlConnection("Data Source=.\\\\你的数据库实例名;Initial Catalog=你的数据库名;User ID=SQL登录方式的用户名;pwd=密码");SqlCommand sqlcom=new SqlCommand();sqlcom.CommandText="delete from 表名";sqlcom.Connection=sqlcon;try { \/\/打开数据库链接 sqlcon.Open();s...

通过用C#中的按钮删除SQL里的表中的数据
删除关键是要有个主键啥的,再学会一句delete,然后再学学sqlcommand就ok了,解决了就来收分。

winform,用c#链接 sql server。对数据库进行查询记录,增加记录,删除记录...
SqlCommand cmd = new SqlCommand(SQL, Conn);创建SqlCommand对象;cmd.ExecuteNonQuery();Conn.Close();\/\/关闭连接 ---查询,并将查询的结果绑定到 dataGridView1经行显示--- string ConnString = "Data Source=SAWYER-PC;Initial Catalog=InfoDemo;Persist Security Info=True;User ID=sa;Password=123...

...如果我要删除符合多个条件的数据库记录,那sql语句应该怎么写!会的大...
delete from 表名 where banji='2' and sex='男' and name='xx'这样删除的是 班级为2并且性别为男 名字为xx的学生信息 如果想只要满足上面一个条件就要删除的话 将and改成or

用c#删除sql2000表中的数据
DataTable dt = new DataTable();\/\/这个sql语句用于获得表结构 SqlDataAdapter da = new SqlDataAdapter(sql,cn);SqlCommandBuilder sb = new SqlCommandBuilder(da);sb.BuildCommand(da);da.Fill(dt);\/\/这里对dt进行修改,比如 DataRow dr = dt.NewRow();dt[0] = "aaa";dr.EndEdit();dt....

C#删除数据库数据
在SqlConnection示例后加代码,其他的代码你写的全部删掉 SqlDataAdapter sda=new SqlDataAdapter("Delete * from 表名 where 条件",conn)Dataset ds=new DataSet();sda.Fill(ds);conn.Close();到此结束

相似回答