【数据库】GaussDB数据类型和简单DDL概述

GaussDB是一款华为公司开发的关系型数据库管理系统(RDBMS),提供了多种数据类型用于存储和处理不同类型的数据。以下是GaussDB常见的数据类型:

1、GaussDB常见的数据类型

1.1、数值型(Numeric Types):

复制代码
* 整型(Integer):INT
* 小数型(Decimal):DECIMAL

1.2、字符型(Character Types):

复制代码
* 字符串(String):CHAR、VARCHAR、TEXT、CLOB
* 二进制数据(Binary Data):BINARY、VARBINARY、BLOB

1.3、时间型(Date and Time Types):

复制代码
* 日期(Date):DATE
* 时间(Time):TIME
* 时间戳(Timestamp):TIMESTAMP

1.4、布尔型(Boolean Type):

复制代码
* 布尔值(Boolean):BOOLEAN

1.5、大整数(Big Integer):

复制代码
* 大整数(Bigint):BIGINT

1.6、浮点型(Floating-Point Types):

复制代码
* 单精度浮点数(Float):FLOAT
* 双精度浮点数(Double):DOUBLE

1.7、其他类型:

复制代码
* XML:XML
* JSON:JSON
* 数组:ARRAY

2、GaussDB常用的DDL语句

2.1、创建数据库

sql 复制代码
CREATE DATABASE database_name
    WITH OWNER = my_user
    TEMPLATE = template0
    ENCODING = 'UTF8'
    LC_COLLATE = 'en_US.UTF-8'
    LC_CTYPE = 'en_US.UTF-8';
  • WITH OWNER:指定数据库的所有者,即拥有该数据库的用户。
  • TEMPLATE:指定用作新数据库模板的现有数据库。在这个示例中,我们使用 template0 作为模板。
  • ENCODING:指定数据库的字符集。在这个示例中,我们使用 UTF8 字符集。
  • LC_COLLATE:指定数据库的排序规则,即字符串比较的规则。在这个示例中,我们使用 en_US.UTF-8 排序规则。
  • LC_CTYPE:指定数据库的字符分类规则,用于字符的分类和转换。

2.2、删除数据库

sql 复制代码
DROP DATABASE database_name;

2.3、创建表

sql 复制代码
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);

2.4、修改表

2.4.1、添加列

sql 复制代码
ALTER TABLE table_name ADD column_name datatype;

2.4.2、修改列数据类型

sql 复制代码
ALTER TABLE table_name ALTER COLUMN column_name TYPE new_datatype;

2.4.3、修改列名

sql 复制代码
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;

2.4.4、删除列

sql 复制代码
ALTER TABLE table_name DROP COLUMN column_name;

2.4.5、修改表名

sql 复制代码
ALTER TABLE table_name RENAME TO new_table_name;

2.5、删除表

sql 复制代码
DROP TABLE table_name;

2.6、创建索引

sql 复制代码
CREATE INDEX index_name ON table_name (column1, column2, ...);

2.7、删除索引

sql 复制代码
DROP INDEX index_name;

2.8、添加表注释

sql 复制代码
COMMENT ON TABLE table_name IS 'Your comment here';

2.9、添加列注释

sql 复制代码
COMMENT ON COLUMN table_name.column_name IS 'Your comment here';
相关推荐
jiayou6413 小时前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北14 小时前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤1 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12022 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区2 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1773 天前
《从零搭建NestJS项目》
数据库·typescript
加号33 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏3 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐3 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再3 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip