GaussDB數(shù)據(jù)庫何創(chuàng)建修改數(shù)據(jù)庫和數(shù)據(jù)表的方法
一、背景
GaussDB 是一款由華為開發(fā)的企業(yè)級分布式數(shù)據(jù)庫,具有高性能、高可用、高可靠性等特點,廣泛應用于各種業(yè)務場景。本指南將介紹如何在 GaussDB 中創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表,修改表結構,并添加約束。
二、創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表
1. 創(chuàng)建數(shù)據(jù)庫
在 GaussDB 中創(chuàng)建數(shù)據(jù)庫可以使用 `CREATE DATABASE` 語句。以下是一個創(chuàng)建名為 `example_db` 的數(shù)據(jù)庫的示例:
CREATE DATABASE example_db;
2.創(chuàng)建數(shù)據(jù)表
在創(chuàng)建數(shù)據(jù)庫之后,可以使用 `CREATE TABLE` 語句來創(chuàng)建數(shù)據(jù)表。以下是一個創(chuàng)建名為 `employee` 的數(shù)據(jù)表的示例,該表包含員工的基本信息:
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) );
三、修改表結構
在實際使用中,可能需要對現(xiàn)有的數(shù)據(jù)表進行結構上的修改??梢允褂?`ALTER TABLE` 語句來添加、修改或刪除表中的列。
1. 添加列
以下是一個向 `employee` 表中添加 `department_id` 列的示例:
ALTER TABLE employee ADD COLUMN department_id INT;
2. 修改列
以下是一個修改 `salary` 列的數(shù)據(jù)類型的示例:
ALTER TABLE employee ALTER COLUMN salary TYPE DECIMAL(12, 2);
3. 刪除列
以下是一個刪除 `birth_date` 列的示例:
ALTER TABLE employee DROP COLUMN birth_date;
四、添加約束
為了確保數(shù)據(jù)的完整性和一致性,可以在表上添加各種約束,包括主鍵、外鍵、唯一性約束等。
1. 添加主鍵約束
創(chuàng)建表時已經(jīng)添加了主鍵約束。下面是一個單獨添加主鍵約束的示例:
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);
五、示例代碼
綜合以上內(nèi)容,以下是一個完整的示例代碼,包括創(chuàng)建數(shù)據(jù)庫、創(chuàng)建表、修改表結構和添加約束:
-- 創(chuàng)建數(shù)據(jù)庫
CREATE DATABASE example_db;
-- 使用新創(chuàng)建的數(shù)據(jù)庫
Use example_db
-- 創(chuàng)建 department 表
CREATE TABLE department ( dept_id SERIAL PRIMARY KEY, dept_name VARCHAR(100) NOT NULL );
-- 創(chuàng)建 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數(shù)據(jù)庫何創(chuàng)建修改數(shù)據(jù)庫和數(shù)據(jù)表的方法的詳細內(nèi)容,更多關于GaussDB創(chuàng)建修改數(shù)據(jù)庫和表的資料請關注腳本之家其它相關文章!
相關文章
Navicat Premium 15 永久破解激活工具及安裝教程(親測可用)
這篇文章主要介紹了Navicat Premium 15 永久破解激活教程,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11Sql Server下數(shù)據(jù)庫鏈接的使用方法
Sql Server下數(shù)據(jù)庫鏈接的使用方法...2006-12-12ms SQL server數(shù)據(jù)庫備份、壓縮與SQL數(shù)據(jù)庫數(shù)據(jù)處理的方法
ms SQL server數(shù)據(jù)庫備份、壓縮與SQL數(shù)據(jù)庫數(shù)據(jù)處理的方法...2007-07-07