云数据库 GAUSSDB-ALTER TABLE:修改列示例
时间:2025-01-06 11:07:36
修改列示例
- 修改列名。
--建表。 gaussdb=# CREATE TABLE test_alt2(c1 INT,c2 INT); --修改列名。 gaussdb=# ALTER TABLE test_alt2 RENAME c1 TO id; gaussdb=# ALTER TABLE test_alt2 RENAME COLUMN c2 to areaid; --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+---------+----------- id | integer | areaid | integer |
- 增加列。
--表test_alt2增加列。 gaussdb=# ALTER TABLE IF EXISTS test_alt2 ADD COLUMN name VARCHAR(20); --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers ----------+-----------------------+----------- id | integer | areaid | integer | name | character varying(20) |
- 增加AUTO_INCREMENT自增列。
--建表,新增自增列。 gaussdb=# CREATE DATABASE test DBCOMPATIBILITY = 'B'; gaussdb=# \c test test=# CREATE TABLE test_autoinc(col1 int); --插入一条数据。 test=# INSERT INTO test_autoinc(col1) VALUES(1); --添加一个本地自增列,从1开始自增。 test=# ALTER TABLE test_autoinc ADD COLUMN col int primary key AUTO_INCREMENT; test=# SELECT col,col1 FROM test_autoinc ORDER BY 2,1; col | col1 -----+------ 1 | 1 (1 row) --将下一个自增值设为10。 test=# ALTER TABLE test_autoinc AUTO_INCREMENT = 10; --NULL触发自增,自增值为10。 test=# INSERT INTO test_autoinc(col, col1) VALUES(NULL,2); --0触发自增,自增值为11。 test=# INSERT INTO test_autoinc(col, col1) VALUES(0,3); test=# SELECT col,col1 FROM test_autoinc ORDER BY 2,1; col | col1 -----+------ 1 | 1 10 | 2 11 | 3 (3 rows) --删除。 test=# DROP TABLE test_autoinc; --切换至默认数据库(请根据实际情况修改数据库名)。 test=# \c postgres; gaussdb=# DROP DATABASE test;
- 修改列的数据类型。
--修改test_alt2表中name字段的类型。 gaussdb=# ALTER TABLE test_alt2 MODIFY name VARCHAR(50); --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+-----------------------+----------- id | integer | areaid | integer | name | character varying(50) | --在线修改test_alt2表中name字段的类型。 gaussdb=# ALTER TABLE ONLINE test_alt2 MODIFY name VARCHAR(60); --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+-----------------------+----------- id | integer | areaid | integer | name | character varying(60) |
--修改test_alt2表中name字段的类型。 gaussdb=# ALTER TABLE test_alt2 ALTER COLUMN name TYPE VARCHAR(25); --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+-----------------------+----------- id | integer | areaid | integer | name | character varying(25) | --在线修改test_alt2表中name字段的类型。 gaussdb=# ALTER TABLE ONLINE test_alt2 ALTER COLUMN name TYPE VARCHAR(35); --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+-----------------------+----------- id | integer | areaid | integer | name | character varying(35) |
- 删除列。
--删除test_alt2中areaid字段。 gaussdb=# ALTER TABLE test_alt2 DROP COLUMN areaid; --查看。 gaussdb=# \d test_alt2 Table "public.test_alt2" Column | Type | Modifiers --------+-----------------------+----------- id | integer | name | character varying(25) |
- 修改列的存储模式
--查看表详细信息。 gaussdb=# \d+ test_alt2 Table "public.test_alt2" Column | Type | Modifiers | Storage | Stats target | Description --------+-----------------------+-----------+----------+--------------+------------- id | integer | | plain | | name | character varying(25) | | extended | | Has OIDs: no Options: orientation=row, compression=no, storage_type=USTORE, segment=off --修改test_alt2表中name字段的存储模式。 gaussdb=# ALTER TABLE test_alt2 ALTER COLUMN name SET STORAGE PLAIN; --查看。 gaussdb=# \d+ test_alt2 Table "public.test_alt2" Column | Type | Modifiers | Storage | Stats target | Description --------+-----------------------+-----------+---------+--------------+------------- id | integer | | plain | | name | character varying(25) | | plain | | Has OIDs: no Options: orientation=row, compression=no, storage_type=USTORE, segment=off --删除。 gaussdb=# DROP TABLE test_alt2;
- 修改字段到指定位置
--创建B模式数据库。 gaussdb=# CREATE DATABASE test DBCOMPATIBILITY 'B'; --连接至test数据库并创建表tbl_test。 gaussdb=# \c test test=# CREATE TABLE tbl_test(id int, name varchar(20)); --修改tbl_test表中字段name类型,并指定位置到最前面。 test=# ALTER TABLE tbl_test MODIFY COLUMN name varchar(25) FIRST; --查看。 test=# \d tbl_test; Table "public.tbl_test" Column | Type | Modifiers --------+-----------------------+----------- name | character varying(25) | id | integer | --修改tbl_test字段name的类型,并指定位置在id字段的后面。 test=# ALTER TABLE tbl_test MODIFY COLUMN name varchar(10) AFTER id; --查看。 test=# \d tbl_test; Table "public.tbl_test" Column | Type | Modifiers --------+-----------------------+----------- id | integer | name | character varying(10) | --删除表tbl_test。 test=# DROP TABLE tbl_test; --切换至默认数据库删除数据库test(根据实际情况切换至相应的数据库)。 test=# \c postgres gaussdb=# DROP DATABASE test;
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0511.html
看了此文的人还看了
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格
推荐文章
- GaussDB主键生成_GaussDB存储过程_高斯数据库主键生成_华为云
- GaussDB行转列_数据中台架构pdf_高斯数据库行转列_华为云
- GaussDB Core_gaussdb内核_高斯数据库Core_华为云
- 云数据库Gaussdb数据库索引_华为gaussdb__gaussdb 数据库
- RDS for MySQL审计日志_开启日志审计_数据库审计_华为云数据库RDS
- 分布式云原生集合示例_华为云分布式云原生_华为云UCS集合示例
- GaussDB行列混合存储_GaussDB规划存储模型_高斯数据库行列混合存储-华为云
- RDS for MySQL变更实例的CPU和内存规格_CPU和内存_CPU过高_MySQL内存
- GaussDB查看表大小_GaussDB查询表空间_高斯数据库查看表大小-华为云
- GaussDB连接_华为Gaussdb_高斯数据库连接_华为云