PostgreSQL 删除check约束的实现
删除check约束:
1.\dtable_name查找约束名称
\ddm_alarms_fct_20170613 "dm_alarms_fct_20170613_dm_transct_date_key_check"
2.altertable..dropconstraint..
ALTERTABLE"dm_alarms_fct_20170613"Dropconstraint"dm_alarms_fct_20170613_dm_transct_date_key_check";
补充:PostgreSQL查询约束和创建删除约束
查询约束constraint
SELECT tc.constraint_name,tc.table_name,kcu.column_name, ccu.table_nameASforeign_table_name, ccu.column_nameASforeign_column_name, tc.is_deferrable,tc.initially_deferred FROM information_schema.table_constraintsAStc JOINinformation_schema.key_column_usageASkcuONtc.constraint_name=kcu.constraint_name JOINinformation_schema.constraint_column_usageASccuONccu.constraint_name=tc.constraint_name WHEREconstraint_type='UNIQUE'ANDtc.table_name='table_name';
constraint_type有四种:
UNIQUE、PRIMARYKEY、CHECK、FOREIGNKEY,通过修改上边sql语句的table_name和constraint_type来进行相应的查询。
添加约束
ALTERTABLEtable_nameADDCONSTRAINTuk_users_name1UNIQUE(NAME);
删除约束
altertabletable_namedropconstraintifEXISTSuk_users_name1;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持毛票票。如有错误或未考虑完全的地方,望不吝赐教。