用T-SQL批量删除数据库表中数据

作者&投稿:仇孔 (若有异议请与网页底部的电邮联系)
如何批量删除数据库中同一字段开头的表?~

--SQL批量删除数据表中指定字段对应的所有约束
--定义要操作的数据表名变量
declare @TableName nvarchar(250)
set @TableName='数据表名'
--定义要操作的字段名变量
declare @ColumnName nvarchar(250)
set @ColumnName='字段名'
--定义当前查询的约束变量
declare @ConstraintName varchar (250)
--声明读取数据表中指定字段对应的所有约束列表游标
declare mycursor cursor for select name from sysobjects left join sysconstraints on sysconstraints.constid=sysobjects.id where parent_obj=OBJECT_ID(''+@TableName+'') and colid=(select colid from syscolumns where id=OBJECT_ID(''+@TableName+'') and OBJECTPROPERTY(id, N'IsUserTable') = 1 and upper(name)=upper(@ColumnName))
--打开游标
open mycursor
--从游标里取出数据赋值到主键约束名称变量中
fetch next from mycursor into @ConstraintName
--如果游标执行成功
while (@@fetch_status=0)
begin
--删除当前找到的约束
--print '当前删除语句'+'ALTER TABLE ['+@TableName+'] DROP CONSTRAINT ['+@ConstraintName+']'
exec ('ALTER TABLE ['+@TableName+'] DROP CONSTRAINT ['+@ConstraintName+']')
print '已成功删除数据表['+@TableName+']字段['+@ColumnName+']对应的约束['+@ConstraintName+']'
--用游标去取下一条记录
fetch next from mycursor into @ConstraintName
end
--关闭游标
close mycursor
--撤销游标
deallocate mycursor

delete from ms_cf01 where brxm='张三' and id='7598';其中: ms_cf01 为你所要删除那条数据所属的表。brxm,id 为你所要删除数据的条件。

T-sql里有一个快速删除表里所有数据的方法:
Truncate Table [表名]

delete from (表名)--是这样写的T-SQL,删除表中所有的数据。

用触发器啊

mysql如何删除数据库中所有数据但是要保留表
答:然后将生成的.sql脚本拷贝到当前文件夹下面:mv/tmp/truncate_test.sql$current_dir/。然后执行.sql脚本将数据库中所有表中数据删除:source$current_dir/truncate_test.sql。注意:在进行select...intooutfile...操作时,默认只能将文件写入到tmp路径下,可以不用将tmp文件夹下面的.sql...

数据库怎么清空一个表中所有数据
答:mysqldump -h localhost -uroot -p123456 -t database > dump.sql 三、导出结构+数据 导出整个数据库结构和数据:mysqldump -h localhost -uroot -p123456 database > dump.sql 导出单个数据表结构和数据:mysqldump -h localhost -uroot -p123456 database table > dump.sql ...

用T—SQL语句创建的数据库删除不了
答:数据库文件是不能直接删除的,即使是复制粘贴也是不允许的,你需要执行删除数据库的操作,如执行SQL语句:drop database dbname 或使用SQL Server的管理工具执行删除。要直接操作数据库的文件,需要先将数据库分离

Oracle数据库怎样删除所有以"T_"开头的数据表?
答:declare p_sql varchar2(4000);begin for r in (select a.TABLE_NAME from user_tables a where a.TABLE_NAME like 'T_%') loop p_sql:='drop table '||r.table_name;execute immediate p_sql;end loop;end;

T-SQL master数据库可以删除吗?
答:在 SQL Server 中,系统对象不再存储在 master 数据库中,而是存储在 Resource 数据库中。此外,master 数据库还记录了所有其他数据库的存在、数据库文件的位置以及 SQL Server 的初始化信息。因此,如果 master 数据库不可用,则 SQL Server 无法启动。所以master数据库是绝对不能删除的!!!

数据库表中有10条数据,除了主键id不同,其余数据完全相同,怎样用一条sq...
答:select * from 表 where id in (select min(id) from 表 group by 字段1,字段2,字段3)字段1,字段2,字段3这个地方,你需要把其他字段一起都group by了

数据库用T—SQL写下列语句
答:set @sql='select sno,pno,jno,qty from tmp_yy where aa='+@i end else exec (@sql)fetch next from cursor1 into @i end close cursor1 deallocate cursor1 --6.创建存储过程,根据用户指定的供应商号删除SPJ表中相应的供货信息。create proc uspdeleteSPJ SNO nvarchar(5)as begin del...

T-SQL语句题 谁能帮忙作答一下
答:1.select * from J where CITY = '上海'2.select top 1 PNO from P order by WEIGHT (where中不能用聚集函数)3.select S.SNO from J,S,SPJ where SPJ.SNO=S.SNO and SPJ.JNO=J.JNO and JNO='J1'4.select S.SNO from P,J,S,SPJ where SPJ.SNO=S.SNO and SPJ.JNO=J.JNO ...

数据库 用 T-SQL语句完成下列题目
答:create table s (sno char(9) primary key,sname char(20),sage smallint,ssex char(2))select cno,cname from c where teacher='刘强'select sno,sname from s where sage<22 and ssex='女'select * from s where sname like '刘%'alter table s add sdept char(20)alter table sc ...

SQLServer如何用T-SQL命令查询一个数据库中有哪些表
答:IF = 内嵌表函数 P = 存储过程 PK = PRIMARY KEY 约束(类型是 K)RF = 复制筛选存储过程S = 系统表TF = 表函数 TR = 触发器U = 用户表UQ = UNIQUE 约束(类型是 K)V = 视图X = 扩展存储过程 另:在sqlserver中取得某个数据库中所有表名的sql语句 select sysobjects.name from ...