认证培训专区
学习笔记
文章
精选
置顶

初学GBase 8c数据库,如何通俗易懂的理解数据库对象及对DDL和DML语言的使用进行对比

发表于2026-06-12 16:04:5040次浏览8个评论

 一、数据库对象理解

        初学GBase 8c数据库,数据库中有许多对象,比如:User、Database、Schema、Table、Index、View、Function、Sequence,除了Schema外,其他对象都比较好理解。在GBase中我理解的是一个组,起隔离作用,类似于操作系统中的文件夹概念(有不对的地方请指正),其他对象理解如下:                  

对象关键字对象名称对象理解
User用户管理数据库操作对象,比如登录、授权、备份等
Database数据库存储的大仓库
Schema模式一个组,隔离表,类似文件夹
Table数据表就像一个EXCEL表格吧
Index索引一本书的目录
View视图一次可以透视多个表的工具
Function函数定义一组命令一起执行
Sequence序列一段等差数列,适合做主键那种

 

二、数据库DDL语言

       数据定义语言,是对数据库相关对象的定义,总的来说分三个大类:增、删、改,具体如下:

1、增(CREATE

   
CREATE TABLESPACE ds_location1 OWNER use1 RELATIVE LOCATION 'tablespace/tablespace1';  #创建表空间,并指定用户
CREATE database mydb1; #建库
CREATE SCHEMA sch_1;   #建模式
CREATE user test_1 with password 'GBase!qaz' 
valid begin '2021-12-01 07:00:00' 
valid until '2022-12-01 07:00:00';      #建用户
CREATE TABLE IF NOT EXISTS tab_1
 (W_WAREHOUSE_SK    INTEGER, 
 W_WAREHOUSE_ID    CHAR(16), 
W_GMT_OFFSET DECIMAL(5,2) ); #建表
CREATE table dist (col1 int, col2 int) DISTRIBUTE BY HASH(col1);   #建表
CREATE table rep (col1 int, col2 int) DISTRIBUTE BY REPLICATION;   #建表
CREATE VIEW v1 AS SELECT * FROM tab_1;     #建视图
CREATE TABLE SEQ_T1
( id serial,
name text); #建序列
CREATE OR REPLACE  SYNONYM v1 FOR ot.v_t1; #建同义词

2、改(ALTER


ALTER TABLESPACE ds_location1 RENAME TO ds_location2; #改表空间
ALTER database mydb2 rename to mydb4;                 #改数据库库名
ALTER user test_1 with 
valid begin '2022-12-01 07:00:00' 
valid until '2023-12-01 07:00:00'; #该用户有效期
ALTER TABLE tab_1 RENAME TO tab_2;  #改表名
ALTER VIEW v1 RENAME TO v2;         #改视图名
      

3、删(DROP)


DROP TABLESPACE ds_location2; #删表空间
DROP ROLE use1 ;              #删用户
DROP database mydb1;          #删库
DROP SCHEMA sch_1 CASCADE;    #删模式
DROP user test_1 CASCADE;     #删用户,级联
DROP TABLE tab_2;             #删表
DROP VIEW v2;                 #删视图
DROP sequence if exists seq1 CASCADE;  #删序列
DROP SYNONYM v1 CASCADE;               #删同义词

总的来说,DDL语言是对数据库中对象进行增删改操作。

三、数据库DML语言

  数据操纵语言,是对数据库记录的操作,总的来说常用的几个大类:增、删、改、查等,具体如下:

1、增(INSERT

INSERT INTO bit_type_t1 VALUES(1, B'101', B'00'); #增加一条记录

2、删(DELETE

DELETE FROM bit_type_t1 WHERE id = 1001; #删除一条记录

3、改(UPDATE)

UPDATE int_type_t1 SET name = '张三', department = '技术部'
 WHERE id = 1001; #更改一条记录

4、查(SELECT)

SELECT * FROM int_type_t1 where id != 1002;

总的来说,DML是对数据库记录的增、删、改、查等操作。

四、总结(对象、DDL、DML)

数据库中有N多对象,DDL定义了数据库对象结构,DML操作了数据库中数据库记录,对数据库相关对象和操作理解比较浅显,欢迎大神来批评指正。

 

 

 

                                     

评论

登录后才可以发表评论
GBase用户51966发表于 1个月前
写得很好,学习了!
GBase用户50900发表于 1个月前
非常实用的内容,收藏了。
GBase用户51510发表于 1个月前
好文章,支持一下!
一个老汉发表于 1个月前
非常实用的内容,收藏了。
GBase用户51511发表于 1个月前
好文章,支持一下!
塔山发表于 1个月前
写得真不错,赞一个!
佛洛伊得发表于 1个月前
感谢分享,非常有帮助。
gbase0001发表于 1个月前
总结明了,适合新手学习