删除语法

删除语法
Delete  from  表名   where  列名=‘删除条件’

 --数据的删除--数据删除一定要加上where条件
 delete from libuser where uaccount = 'linling3';

truncate删除语法
truncate  table  表名 ;

--删除数据--只删除数据,之前数据占用的表空间还会被占用
  delete from libprivilege where 1=1;
  --截断表格--删除数据同时释放表空间
  
  --打开或关闭(启用和禁用)约束的语法
  -- alter table 表名 disable constraint 约束名 ;
  --alter table rroleprivilege disable constraint FK_RROLEPRIVILEGE_LIBROLE ;--禁用约束
  --ddl语句一般不需要进行事务控制
  --alter table rroleprivilege enable constraint FK_RROLEPRIVILEGE_LIBROLE ;
  
  --注意:truncate截断表格时,如果该表格有主键被其它外键引用,则需要删除或禁用该外键后才能使用
  truncate table libprivilege;
  
级联删除
-- Create/Recreate primary, unique and foreign key constraints 
alter table LIBPRIVILEGE
  drop constraint FK_LIBPRIVILEGE_LIBPRIVILEGE;
  
alter table LIBPRIVILEGE
  add constraint FK_LIBPRIVILEGE_LIBPRIVILEGE foreign key (PARENTID)
  references LIBPRIVILEGE (PID) on delete cascade;
  
 --删除书籍入库权限,pid=10040102 
 --cascade是级联删除,级联删除会删除有主外键关联关联的数据(外关联或自关联都会删除)
 --注意:级联删除会无限度的进行删除,直到把所有有关联关系的数据都删除掉为止---需要慎重使用
 --经验总结:如果对级联关系理解不太好时,考虑使用程序进行分步删除而不要配置数据库的级联操作
 --delete from libprivilege where pid=10040102;

 

posted @ 2016-11-07 21:29  binbgo  阅读(439)  评论(0编辑  收藏  举报