zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

GreenPlum的那些事《四》——增删改查

2023-02-26 10:20:08 时间

上文我们介绍了GPDB的常用管理操作,今天我们来说下它的增删改查。这是对于一个数据库最基本的功能了,然而GPDB有它自己的特性,我们一起来看下。

插入数据

按列插入数据:

(福利推荐:阿里云、腾讯云、华为云服务器最新限时优惠活动,云服务器1核2G仅88元/年、2核4G仅698元/3年,点击这里立即抢购>>>

gptest=# create table products (name varchar(20),price numeric(10,2),product_no bigint)  distributed by  (product_no);                      CREATE TABLE gptest=# INSERT INTO products (name, price, product_no) VALUES ('Cheese', 9.99, 1); INSERT 0 1 gptest=# select * from products;   name  | price | product_no  --------+-------+------------  Cheese |  9.99 |          1 (1 row) 

同事插入多列:

gptest=# INSERT INTO products (product_no, name, price) VALUES gptest-#     (1, 'Cheese', 9.99), gptest-#     (2, 'Bread', 1.99), gptest-#     (3, 'Milk', 2.99); INSERT 0 3 gptest=# select * from products;                                                                                                            name  | price | product_no  --------+-------+------------  Cheese |  9.99 |          1  Cheese |  9.99 |          1  Bread  |  1.99 |          2  Milk   |  2.99 |          3 (4 rows)

我们看到了GPDB插入数据和普通数据库一样,那么是否可以像传统的DBMS一样用作OLTP系统呢。不是的!GPDB官方文档指出对于append表最大127个并发实务操作,所以你不能把它用作生产业务系统数据库,对于高并发并不合适!对于频繁的数据插入操作,我们通常不用insert操作,用copy命令,后面我们会介绍。

更新数据

gptest=# UPDATE products SET price = 10 WHERE price = 9.99; UPDATE 2 gptest=# select * from products;   name  | price | product_no  --------+-------+------------  Bread  |  1.99 |          2  Cheese | 10.00 |          1  Cheese | 10.00 |          1  Milk   |  2.99 |          3 (4 rows) 

删除数据

gptest=# DELETE FROM products WHERE price = 10; DELETE 2 gptest=# select * from products;  name  | price | product_no  -------+-------+------------  Milk  |  2.99 |          3  Bread |  1.99 |          2 (2 rows) 

清空表数据

gptest=# truncate table products; TRUNCATE TABLE gptest=# select * from products;   name | price | product_no  ------+-------+------------ (0 rows) 

GPDB的删除和更新操作,并不是直接物理删除数据,而是对数据打了一个标志,select查询的时候看不到而已,GPDB会定时自动清空这些数据,回收空间。当然你也可以手动运行VACUUM 命令来手动回收空间。

VACUUM products

删除数据后,最好运行一下VACUUM,对于大表,不要轻易做VACUUM!

GreenPlum的那些事《四》——增删改查


本站部分内容转载自网络,版权属于原作者所有,如有异议请联系QQ153890879修改或删除,谢谢!
转载请注明原文链接:GreenPlum的那些事《四》——增删改查

你还在原价购买阿里云、腾讯云、华为云、天翼云产品?那就亏大啦!现在申请成为四大品牌云厂商VIP用户,可以3折优惠价购买云服务器等云产品,并且可享四大云服务商产品终身VIP优惠价,还等什么?赶紧点击下面对应链接免费申请VIP客户吧:

1、点击这里立即申请成为腾讯云VIP客户

2、点击这里立即注册成为天翼云VIP客户

3、点击这里立即申请成为华为云VIP客户

4、点击这里立享阿里云产品终身VIP优惠价

喜欢 (0)
[[email protected]]
分享 (0)