一、背景
gaussdb 是一款由华为开发的企业级分布式数据库,具有高性能、高可用、高可靠性等特点,广泛应用于各种业务场景。本指南将介绍如何在 gaussdb 中创建数据库和数据表,修改表结构,并添加约束。
二、创建数据库和数据表
1. 创建数据库
在 gaussdb 中创建数据库可以使用 `create database` 语句。以下是一个创建名为 `example_db` 的数据库的示例:
create database example_db;
2.创建数据表
在创建数据库之后,可以使用 `create table` 语句来创建数据表。以下是一个创建名为 `employee` 的数据表的示例,该表包含员工的基本信息:
create table employee (
emp_id serial primary key,
first_name varchar(50),
last_name varchar(50),
birth_date date,
hire_date date,
salary numeric(10, 2)
);三、修改表结构
在实际使用中,可能需要对现有的数据表进行结构上的修改。可以使用 `alter table` 语句来添加、修改或删除表中的列。
1. 添加列
以下是一个向 `employee` 表中添加 `department_id` 列的示例:
alter table employee add column department_id int;
2. 修改列
以下是一个修改 `salary` 列的数据类型的示例:
alter table employee alter column salary type decimal(12, 2);
3. 删除列
以下是一个删除 `birth_date` 列的示例:
alter table employee drop column birth_date;
四、添加约束
为了确保数据的完整性和一致性,可以在表上添加各种约束,包括主键、外键、唯一性约束等。
1. 添加主键约束
创建表时已经添加了主键约束。下面是一个单独添加主键约束的示例:
alter table employee add constraint pk_emp_id primary key (emp_id);
2. 添加外键约束
以下是一个为 `employee` 表中的 `department_id` 列添加外键约束的示例,该列引用 `department` 表中的 `dept_id` 列:
alter table employee add constraint fk_department foreign key (department_id) references department(dept_id);
3.添加唯一性约束
以下是一个为 `employee` 表中的 `first_name` 和 `last_name` 列添加唯一性约束的示例:
alter table employee add constraint unique_name unique (first_name, last_name);
五、示例代码
综合以上内容,以下是一个完整的示例代码,包括创建数据库、创建表、修改表结构和添加约束:
-- 创建数据库
create database example_db;

-- 使用新创建的数据库
use example_db

-- 创建 department 表
create table department (
dept_id serial primary key,
dept_name varchar(100) not null
);
-- 创建 employee 表
create table employee (
emp_id serial primary key,
first_name varchar(50),
last_name varchar(50),
hire_date date,
salary decimal(12, 2),
department_id int,
constraint unique_name
unique (first_name, last_name)
);
-- 修改表结构:添加列
alter table employee add column birth_date date;

-- 修改表结构:修改列类型
alter table employee alter column salary decimal(14, 2);

-- 删除列
alter table employee drop column birth_date;

六、 总结
以上就是gaussdb数据库何创建修改数据库和数据表的方法的详细内容,更多关于gaussdb创建修改数据库和表的资料请关注代码网其它相关文章!
发表评论