postgre中修改表结构的语句

1.新建表(自增长序列)

DROP TABLE IF EXISTS ptb.pd_patient;
CREATE TABLE ptb.pd_patient (
   person_id             BIGSERIAL PRIMARY KEY,
   organization_id       INT NOT NULL,
   patient_id            VARCHAR(255) NOT NULL,
   created_date          TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

CONSTRAINT pd_patient_pk PRIMARY KEY (person_id)
);
ALTER SEQUENCE ptb.pd_patient_person_id_seq RESTART WITH 30000000020;

--BIGSERIAL ,SERIAL默认生产的序列:表_字段_seq;

select nextval('ptb.pd_patient_person_id_seq');
select currval('ptb.pd_patient_person_id_seq');

-- 手动给 postgre 增加自增长系列;

CREATE SEQUENCE ptb.tb_discussion_serial START 1 OWNED BY ptb.tb_discussion.discussion_id;

ALTER TABLE ptb.tb_discussion ALTER COLUMN discussion_id SET DEFAULT nextval('ptb.tb_discussion_serial');

 

为已有的字段添加默认值
ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT default_value;

删除默认值
ALTER TABLE table_name ALTER COLUMN column_name DROP DEFAULT;

删除一个字段

ALTER TABLE ptb.tb_patient_tracking DROP COLUMN report_id;

新增一个字段

ALTER TABLE ptb.tb_patient_tracking add report_id int4;

字段类型varchar 转int

alter table  ptb.gtr_gene_Test  alter genomic_report_id  type Int4 USING genomic_report_id::int4 ;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值