postgresql 中drop与delete 与truncate的区别。

在PostgreSQL中,DROP,DELETE和TRUNCATE都是用于删除数据的命令,但它们的工作方式和使用场景有所不同。

  1. DROP: DROP命令用于删除整个数据库或表。它会删除表的结构和数据,以及与表相关的索引、触发器、约束等。一旦执行,无法撤销。
DROP TABLE table_name;

1.2 在PostgreSQL中,如果你想删除表中的某一列,你可以使用ALTER TABLE命令配合DROP COLUMN子句。以下是具体的语法:

ALTER TABLE table_name DROP COLUMN column_name;

在数据库中,列通常代表数据的属性,而行代表数据记录。因此,删除列意味着删除整个属性,这需要更改表的结构,而DELETE命令不会更改表的结构。

  1. DELETE: DELETE命令用于删除表中的一行或多行数据。它可以与WHERE子句一起使用,以便只删除满足特定条件的行。DELETE命令会触发与表相关的所有触发器和外键约束。
DELETE FROM table_name WHERE condition;
  1. TRUNCATE: TRUNCATE命令用于删除表中的所有行。它不会触发与表相关的触发器,也不会记录删除的每一行,因此比DELETE命令更快。但是,它不能删除满足特定条件的行。
TRUNCATE TABLE table_name;

总结一下:DROP是删除整个表,表结构也会删除,DELETE是删除特定的行,TRUNCATE是快速删除所有行,DELETE与TRUNCATE表结果依旧存在。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值