暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

openGauss每日一练第16天 | 逻辑结构:表管理4

原创 dodou 2022-12-09
188

课程地址

今天的课程练习了表的创建、增加列、删除列,增加约束、删除约束等,主要通过alter table [add delete]相关语法实现,具体可以查看\help alter table

Command: ALTER TABLE Description: change the definition of a table Syntax: ALTER TABLE [ IF EXISTS ] { table_name [*] | ONLY table_name | ONLY ( table_name )} action [, ... ]; ALTER TABLE [ IF EXISTS ] table_name ADD ( { column_name data_type [ compress_mode ] [ COLLATE collation ] [ column_constraint [ ... ] ]} [, ...] ); ALTER TABLE [ IF EXISTS ] table_name MODIFY ( { column_name data_type | column_name [ CONSTRAINT constraint_name ] NOT NULL [ ENABLE ] | column_name [ CONSTRAINT constraint_name ] NULL } [, ...] ); ALTER TABLE [ IF EXISTS ] table_name RENAME TO new_table_name; ALTER TABLE [ IF EXISTS ] { table_name [*] | ONLY table_name | ONLY ( table_name )} RENAME [ COLUMN ] column_name TO new_column_name; ALTER TABLE [ IF EXISTS ] { table_name [*] | ONLY table_name | ONLY ( table_name )} RENAME CONSTRAINT constraint_name TO new_constraint_name; ALTER TABLE [ IF EXISTS ] table_name
复制

课程作业

1.创建表,为表添加字段

drop table if exists product; create table product ( id int, name varchar(20) not null, weight int default 1, primary key(id) ); --查看表test的信息 \d product --为表product新增一列,列名为price,数据类型为int: alter table product add column price int; --执行下面gsql命令,查看表test的信息 \d product
复制

2.删除表中的已有字段

--执行下面的SQL语句,删除刚刚添加的列price: alter table product drop column price ; --执行下面gsql命令,再次查看表test的信息 \d product
复制

3.删除表的已有约束、添加约束

--表test上有一个名叫test_pkey的PRIMARY KEY约束。执行下面的SQL语句,删除这个约束: alter table product drop constraint product_pkey; --执行下面的gsql命令,再次查看表test的信息: \d product --或直接查看约束是否被删除 select * from pg_constraint where conname like 'product_pkey'; -- 增加约束 alter table product add constraint product_pkey primary key(id); \d product
复制

4.修改表字段的默认值

--执行下面的SQL语句,将age的默认值变更为25 alter table product alter column weight set default 10; \d test
复制

5.修改表字段的数据类型

-- 将weight改为char(20)类型 alter table product alter column weight TYPE char(20); -- 当表中有数据时,会尝试类型转换,如果类型转换失败,则修改类型失败 \d product
复制

6.修改表字段的名字

ALTER TABLE product RENAME COLUMN weight TO total_weight; \d product
复制

7.修改表的名字

--修改表的名字。执行下面的SQL语句,将表test的名字变更为mytest: ALTER TABLE product RENAME TO product_ex; \d product_ex
复制

8.删除表

-- 表不存在时,提示不存在 DROP TABLE if exists product; DROP TABLE if exists product_ex;
复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

墨天轮-雪宝君
暂无图片
2年前
评论
暂无图片 0
作业审核合格,一起参与21天openGauss学习打卡活动! 活动详情:https://www.modb.pro/db/551619
2年前
暂无图片 点赞
评论