
1、首先创建一个临时表,用于演示sqlserver语法中delete删除的使用方法
IF OBJECT_ID('tempdb#tblDelete') IS NOT NULL DROP TABLE #tblDelete;
CREATE TABLE #tblDelete(
Code varchar(50),
Total int
);
2、然后往临时表#tblDelete中插入几行测试,用于演示如何删除数据
insert into #tblDelete(Code, Total) values('Code1', 30);
insert into #tblDelete(Code, Total) values('Code2', 40);
insert into #tblDelete(Code, Total) values('Code3', 50);
insert into #tblDelete(Code, Total) values('Code4', 6);
3、查询临时表#tblDelete中的测试数据select from #tblDelete;
4、删除临时表#tblDelete中Code栏位=Code3的记录,使用下面的delete语句
delete #tblDelete where Code = 'Code3'
5、再次查询临时表#tblDelete的结果,可以看到Code3的记录没有了
select from #tblDelete;
6、删除临时表#tblDelete中Code栏位=Code2的记录,使用下面的delete语句。
注意,下面的delete语句后面有一个from关键字,这个关键字是可以省略的,但是建议不要省略
delete from #tblDelete where Code = 'Code2'
7、再次查询临时表#tblDelete的结果,可以看到Code2的记录没有了
select from #tblDelete;
8、最后,如果想要快速的删除表中的所有数据,有下面两种方式。第二种方式速度更快,delete from #tblDelete;truncate table #tblDelete;完成效果图。
好多问题。。。
!- -
不要牵涉到前台。。也可以直接在后台中编写。。。
首先当然要写上using SystemDataSqlClient;//这句要写上
1、建立连接字符串如下:
SqlConnection testconn = new SqlConnection("Server=\\SQLEXPRESS;database=test;uid=sa;pwd=123456");
//SQL服务器为\\SQLEXPRESS,数据库为test,使用sql认证方式,用户名sa,密码123456
SqlConnection testconn = new SqlConnection("Server=\\SQLEXPRESS;database=test;Integrated Security = True");
//SQL服务器为\\SQLEXPRESS,数据库为test,使用windows认证方式
2、写SQL语句字符串
string idsql = "SELECT FROM stu";
string countsql="SELECT COUNT() FROM stu";
string textsql = "SELECT FROM stu WHERE id=" + DropDownList1SelectedValue;
string addsql="INSERT INTO stu VALUES('"+TextBox1Text+"','"+TextBox2Text+"','"+TextBox3Text+"')";
string deletsql = "DELETE FROM stu WHERE id=" + TextBox1Text;
string upsql = "UPDATE stu SET name='" + TextBox2Text + "'," + "class='" + TextBox3Text + "' WHERE id=" + TextBox1Text;
3、添加命令
SqlCommand sid = new SqlCommand(idsql,testconn);
SqlCommand count = new SqlCommand(countsql,testconn);
SqlCommand stext = new SqlCommand(textsql, testconn);
SqlCommand addcmd = new SqlCommand(addsql, testconn);
SqlCommand deletcmd = new SqlCommand(deletsql, testconn);
SqlCommand upcmd = new SqlCommand(upsql, testconn);
4、打开连接
testconnOpen();
5、执行命令
countExecuteScalar();//一般增删改的命令执行都用这个吧
addcmdExecuteScalar();
deletcmdExecuteScalar();
upcmdExecuteScalar();
查询读取数据比较麻烦如下:
SqlDataReader testdr = sidExecuteReader();//执行查询时需要个dr
testdrRead();//执行读取
testdr["列名"];//读取一个值
TextBox1Text = textdr["id"]ToString();
TextBox2Text = textdr["name"]ToString();
TextBox3Text = textdr["class"]ToString();
while(testdrRead())//testdrRead()读出某列所有数据
{
DropDownList1ItemsAdd(testdr["id"]ToString());//testdr["id"]读出id列的数据
}
textdrClose();//最后关闭读取
6、关闭连接
testconnClose();
---------------------------------------------------------------------------------------------------
以下为本人做的完整实例代码:
using System;
using SystemData;
using SystemConfiguration;
using SystemWeb;
using SystemWebSecurity;
using SystemWebUI;
using SystemWebUIWebControls;
using SystemWebUIWebControlsWebParts;
using SystemWebUIHtmlControls;
using SystemDataSqlClient;//这句要写上
public partial class _Default : SystemWebUIPage
{
static int k;
//SqlConnection testconn = new SqlConnection("Server=\\SQLEXPRESS;database=test;uid=sa;pwd=123456");
SqlConnection testconn = new SqlConnection("Server=\\SQLEXPRESS;database=test;Integrated Security = True");
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//SqlCommand sid = testconnCreateCommand();
//SqlCommand count = testconnCreateCommand();
//sidCommandText = "SELECT FROM stu";
//countCommandText = "SELECT COUNT() FROM stu";
string idsql = "SELECT FROM stu";
string countsql="SELECT COUNT() FROM stu";
SqlCommand sid = new SqlCommand(idsql,testconn);
SqlCommand count = new SqlCommand(countsql,testconn);
try
{
testconnOpen();
//k = (int)countExecuteNonQuery();
k = (int)countExecuteScalar();
SqlDataReader testdr = sidExecuteReader();
while (testdrRead())
{
DropDownList1ItemsAdd(testdr["id"]ToString());
}
testdrClose();
}
catch (Exception ex)
{
ResponseWrite("<scirpt>alert('" + exMessageToString() + "')</script>");
}
finally
{
testconnClose();
}
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
string textsql = "SELECT FROM stu WHERE id=" + DropDownList1SelectedValue;
SqlCommand stext = new SqlCommand(textsql, testconn);
testconnOpen();
SqlDataReader textdr = stextExecuteReader();
textdrRead();
TextBox1Text = textdr["id"]ToString();
TextBox2Text = textdr["name"]ToString();
TextBox3Text = textdr["class"]ToString();
textdrClose();
testconnClose();
}
protected void Button1_Click(object sender, EventArgs e)
{
string addsql="INSERT INTO stu VALUES('"+TextBox1Text+"','"+TextBox2Text+"','"+TextBox3Text+"')";
SqlCommand addcmd = new SqlCommand(addsql, testconn);
testconnOpen();
addcmdExecuteScalar();
testconnClose();
ResponseRedirect("//defaultaspx");
}
protected void Button2_Click(object sender, EventArgs e)
{
string deletsql = "DELETE FROM stu WHERE id=" + TextBox1Text;
SqlCommand deletcmd = new SqlCommand(deletsql, testconn);
testconnOpen();
deletcmdExecuteScalar();
testconnClose();
ResponseRedirect("//defaultaspx");
}
protected void Button3_Click(object sender, EventArgs e)
{
string upsql = "UPDATE stu SET name='" + TextBox2Text + "'," + "class='" + TextBox3Text + "' WHERE id=" + TextBox1Text;
SqlCommand upcmd = new SqlCommand(upsql, testconn);
testconnOpen();
upcmdExecuteScalar();
testconnClose();
ResponseRedirect("//defaultaspx");
}
}
清空所有数据:Truncate Table stu或者Delete stu。
清空第10条以后数据:Delete From Stu Where id Not In、
Select Top 10 id From stu Order By id。
数据库清空表使用delete和truncate语句,但这两个命令语句是有区别的:
首先区别在于,delete是数据库 *** 作语句而非命令语句,直接清空的是数据,能够触发触发器等 *** 作。而truncate是命令语句,不会触发触发器等 *** 作,但不能回滚。truncate语句是直接提交的数据库的,而delete是DML语句。delete还会保留数据库的高水线。打个比方,你就能知道最简单的区别。比如你的表中有一个自增长的ID,truncate之后,ID会重新开始编码,但delete会接着你删除的最大值进行编码。语法上 delete可以带where条件,删除指定数据,但truncate是不能的,只能全部清空表。
下面写一下两个语句清空表的语法:delete table、truncate table。
以上就是关于SQL怎么用DELETE删除多条数据全部的内容,包括:SQL怎么用DELETE删除多条数据、asp.net中Delete语句应该怎么写前台和后台的怎么连上数据库、清空表应该怎么写 SQL等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)