VFP中SQL语句中视图删除命令

VFP中SQL语句中视图删除命令,第1张

sql中delete,drop

,truncate都代表删除,但3者又有一些区别

1

truncate和

delete只删除数据不删除表的结构(定义)

drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index);

依赖于该表的存储过程/函数将保留,但是变为invalid状态

2delete语句是dml,这个 *** 作会放到rollback

segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发

truncate,drop是ddl,

*** 作立即生效,原数据不放到rollback

segment中,不能回滚

*** 作不触发trigger

3delete语句不影响表所占用的extent,

高水线(high

watermark)保持原位置不动

显然drop语句将表所占用的空间全部释放

truncate

语句缺省情况下见空间释放到

minextents个

extent,除非使用reuse

storage;

truncate会将高水线复位(回到最开始)

4速度,一般来说:

drop>;

truncate

>;

delete

5安全性:小心使用drop

和truncate,尤其没有备份的时候否则哭都来不及

使用上,想删除部分数据行用delete,注意带上where子句

回滚段要足够大

想删除表,当然用drop

想保留表而将所有数据删除

如果和事务无关,用truncate即可

如果和事务有关,或者想触发trigger,还是用delete

如果是整理表内部的碎片,可以用truncate跟上reuse

stroage,再重新导入/插入数据

在实际应用中,三者的区别是明确的。

当你不再需要该表时,

drop;

当你仍要保留该表,但要删除所有记录时,

truncate;

当你要删除部分记录时(always

with

a

WHERE

clause),

delete

而alter是对表结构的修改

希望对你理解有帮助。

视图是随数据库保存的。当您从服务器资源管理器中删除视图时,它也会从数据库中删除。说明对于与某些数据库管理系统的连接,删除视图并不完全可用。说明对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见

以上就是关于VFP中SQL语句中视图删除命令全部的内容,包括:VFP中SQL语句中视图删除命令、如何:从数据库中删除视图、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10195941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存