当前位置:首页 » 编程语言 » sql2008delete

sql2008delete

发布时间: 2022-04-13 00:02:55

sql2008 delete 表数据后 数据库物理大小没变,该怎么处理

删除数据是不会收缩文件的物理空间的。
删除数据后的空闲空间,将会留给以后数据增长时使用。
如果想要收缩文件的物理空间大小,可以使用收缩数据库和收缩文件。
对应是DBCC SHRINKDB和DBCC SHRINKFILE两个命令,具体使用方法请见联机丛书。

② SQL Server 2008数据库中的记录用delete语句删除后能否恢复

呵呵,如果你有删除之前做过备份,那么可以从备份里面恢复。
如果你的数据库模式是完全或者大容量日志,也可能可以恢复,据说可以从日志中恢复数据,但是,我不知道方法。
一般操作之前,可以先按delete的条件select一次数据,符合要求后再改成delete。或者干脆先将要delete的数据select
into一张临时表,检查无误后再drop掉临时表。

③ SQL SERVER 2008数据还原(误操作delete、update等)

如果你以前有做过全备份,现在再做一个日志备份。
然后,还原全备 with restore方式,再还原日志备份到你删除前的时间点。

你可以还原到一个新数据库上,然后看一下数据是否还原了,如果还原了,把数据更新到原数据库的表上就可以了。

④ SQL2008删除部分数据语句

createtablett10(Nodeidint);
--将1到100插入表中
insertintott10
selectnumberfrommaster.dbo.spt_values
wherenumber>0andnumber<=100andtype='p'
--查看数据
select*fromtt10

⑤ 如何删除sql server 2008 表的数据

在sql
server
2008management
studio,用相关账号登录,找到你所要清空数据的表所在的数据库,然后选中数据库右键选择新建查询,进入查询界面窗口,选择输入以下sql语句就可以了。
如果没有其他表的外键关联这个表的主键,可以用下面的语句(效率比较高)
truncate
table
tablename
如果有的话,就用
delete
from
tablename

⑥ SQL 中delete语句可以删除表么

sql中delete语句不能删除表,只能删除表中的所有行数据。

delete from 表名

想要彻底删除表,可以用drop语句。

drop 表名

拓展资料:

drop,delete区别

1、drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉.以后要新增数据是不可能的,除非新增一个表。

drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger)索引(index);依赖于该表的存储过程/函数将被保留,但其状态会变为:invalid。

2、delete (删除表中的数据):delete 语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存, 以便进行进行回滚操作。

3、执行速度,一般来说: drop> delete。

4、delete语句是数据库操作语言(dml),这个操作会放到 rollback segement 中,事务提交之后才生效;如果有相应的 trigger,执行的时候将被触发。drop 是数据库定义语言(ddl),操作立即生效,原数据不放到 rollback segment 中,不能回滚,操作不触发 trigger。

⑦ SQL 2008 触发器中UPDATE、DELETE

1.CREATE TRIGGER TEST1
ON A FOR UPDATE
AS
DECLARE @A,@B,@C,@D,@E,@F,@G
SELECT @B=B,....@G=G FROM INSERTED WHERE A=@A
UPDATE B SET A=@A,,,,G=@G,[KEY] = 2 WHERE @A=A
GO
2.CREATE TRIGGER TEST2
ON A FOR DELETE
AS
declare @A
SELECT @A = A FROM DELETED
UPDATE B SET [KEY] = 3
GO
第一个我不知道能不能完成你的功能 没有测试

⑧ sql2008删除表里面全部数据

如果这个表没有被其它表外键引用,可以采用一楼的方法:
truncate table shop_one;
如果这个表被其它表外键引用,就不能使用truncate table来删除。只能使用delete 语句。
表有23W行数据,直接用delete from shop_one使得这个事务的时间很长,影响数据库的并发性能。可以将删除分成很多个小事务来完成,性能会比较好。

delete top(1000) from shop_one -- 首先删除1000行
while @@ROWCOUNT = 1000 -- 如果还有数据,就循环删除操作
delete top(1000) from shop_one; -- 每次最多删除1000行。

⑨ sql2008 delete触发器通过应用程序删除数据时没有触发。

解决了,跟应用程序没有关系,是数据的问题,触发器的条件没有满足,虽然表中数据有变动,但是不在触发范围。

热点内容
脚本找书 发布:2024-05-03 12:02:17 浏览:493
境外服务器租用怎么办 发布:2024-05-03 11:45:34 浏览:943
我的世界服务器怎么设置到重生点 发布:2024-05-03 11:33:04 浏览:752
mysqllinux安装包下载 发布:2024-05-03 11:32:07 浏览:934
以太算法的币 发布:2024-05-03 11:30:45 浏览:383
编译nfs 发布:2024-05-03 11:30:40 浏览:432
srs搭建直播服务器 发布:2024-05-03 11:29:53 浏览:133
南通哪里有卖密码锁的 发布:2024-05-03 11:22:01 浏览:522
除法指算法 发布:2024-05-03 11:21:23 浏览:844
h265压缩 发布:2024-05-03 11:20:27 浏览:490