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

GBase 8c向表中插入数据(二)

大壮十二 2022-09-20
646

操作步骤

向表中插入数据前,意味着表已创建成功。创建表的步骤请参考3.6 创建和管理表。

步骤1 向表customer_t1中插入一行:数据值是按照这些字段在表中出现的顺序列出的,并且用逗号分隔。通常数据值是文本(常量),但也允许使用标量表达式。

gbase=# INSERT INTO customer_t1(c_customer_sk, c_customer_id, c_first_name) VALUES (3769, 'hello', 'Grace');

如果用户已经知道表中字段的顺序,也可无需列出表中的字段。例如以下命令上面的命令效果相同。

gbase=# INSERT INTO customer_t1 VALUES (3769, 'hello', 'Grace');

如果用户不知道所有字段的数值,可以忽略其中的一些。没有数值的字段将被填充为字段的缺省值。例如:

gbase=# INSERT INTO customer_t1 (c_customer_sk, c_first_name) VALUES (3769, 'Grace');

gbase=# INSERT INTO customer_t1 VALUES (3769, 'hello');

用户也可以对独立的字段或者整个行明确缺省值:

gbase=# INSERT INTO customer_t1 (c_customer_sk, c_customer_id, c_first_name) VALUES

(3769, 'hello', DEFAULT);

gbase=# INSERT INTO customer_t1 DEFAULT VALUES;

步骤2 如果需要在表中插入多行,请使用以下命令:

gbase=# INSERT INTO customer_t1 (c_customer_sk, c_customer_id, c_first_name) VALUES (6885, 'maps', 'Joes'), (4321, 'tpcds', 'Lily'), (9527, 'world', 'James');

如果需要向表中插入多条数据,除此命令外,也可以多次执行插入一行数据命令实现。但是建议使用此命令可以提升效率。

步骤3 如果从指定表插入数据到当前表,例如在数据库中创建了一个表customer_t1的备份表customer_t2,现在需要将表customer_t1中的数据插入到表customer_t2中,则可以执行如下命令。

gbase=# CREATE TABLE customer_t2 (

c_customer_sk integer,

c_customer_id char(5),

c_first_name char(6),

c_last_name char(8)

);

gbase=# INSERT INTO customer_t2 SELECT * FROM customer_t1;

步骤4 删除备份表。

gbase=# DROP TABLE customer_t2 CASCADE;


在删除表的时候,若当前需删除的表与其他表有依赖关系,需先删除关联的表,然后再删除当前表。

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

评论