postgresql truncate table

[摘要] 最近的Django项目使用了postgresql作为数据库,postgresql在使用上还是跟mysql有比较大区别,很多命令和语句都变了,操作方式也改变很大,今天在postgresql数据库上做一个简单的 postgresql truncate table 操作,由于涉及到了 ForeignKey CASCADE,会引发连锁反应,挺有趣。

我的表名:sudops_user_baseinfo
执行命令:

sql> TRUNCATE TABLE sudops_user_baseinfo;

因为有ForeignKey的关联表,会有如下报错,

输出:
ERROR:  cannot truncate a table referenced in a foreign key constraint
DETAIL:  Table "sudops_idc_info" references "sudops_user_baseinfo".
HINT:  Truncate table "sudops_idc_info" at the same time, or use TRUNCATE ... CASCADE.

SQL后面添加 CASCADE 再执行,可以 TRUNCATE 成功

sql> TRUNCATE TABLE sudops_user_baseinfo CASCADE;

这种方式是把数据多清掉了,但是自增的sequence仍然存在,TRUNCATE后重新插入数据库会接着sequence的自增ID开始,如图所示:

如果要同时 TRUNCATE 掉自增的 sequence,可以执行如下SQL语句:

sql> TRUNCATE TABLE sudops_user_baseinfo RESTART IDENTITY CASCADE;
输出:
NOTICE:  truncate cascades to table "sudops_idc_info"
NOTICE:  truncate cascades to table "sudops_server_baseinfo"
TRUNCATE TABLE

u2

Related Posts

mysql连接失败:The driver has not received any packets from the server

解决java spring连接mysql报错问题,增加连接串参数

Read more

python cx-Oracle 驱动安装

安装oracle驱动 cx-Oracle驱动二进制版本下载地…

Read more

You Missed

TraceClaw:企业级透明可控智能体,全行为审计+零信任执行

  • u2
  • 6月 13, 2026
  • 20 views

一年前让英伟达蒸发6000亿美元的中国AI,现在被黄仁勋请上了CES的PPT

  • u2
  • 6月 7, 2026
  • 70 views

当AI开始”破坏”:Anthropic告诉我们,每个用户都该重新审视自己的使用方式

  • u2
  • 6月 6, 2026
  • 74 views

10款大模型同台黑客测试:GPT-5.5拿了王冠,DeepSeek便宜15倍,Gemini直接退赛

  • u2
  • 6月 5, 2026
  • 61 views

30天,0天,90天:一纸行政令,把AI公司的”自由发布”踩了急刹车

  • u2
  • 6月 4, 2026
  • 81 views

AI很厉害,可你省的人力费还不够买Token!

  • u2
  • 6月 2, 2026
  • 94 views