Postgresql中如何给表添加新列

 时间:2024-10-14 13:48:07

1、Postgresql自带工具psql连接数据库 psql -Upostgres -h 127.0.0.1 pg_test_db(我们这里使用自带用户postgres, 数据库安装在本机127.0.0.1)

Postgresql中如何给表添加新列

2、创建schema:pg_test_db=# create schema schema_a巳呀屋饔,创建表pg_test_db=# create table schema_a.table_a(id int, name varchar);

Postgresql中如何给表添加新列

3、现在我们要添加descr列。由于我们的脚本必须能够允许多次运行,所以再添加列的时候必须判断表中是否descr已经存在。Postgresql中information_schema.columns包含所有表的列信息。

Postgresql中如何给表添加新列
Postgresql中如何给表添加新列

4、脚本内容:DO language plpgsql $$幞洼踉残BEGIN RAISE INFO '*************** t髫潋啜缅est_add_column.sql begins'' ***************'; if not exists (select 1 from information_schema.columns where table_schema = 'schema_a' and table_name = 'table_a' and column_name = 'descr') then alter table schema_a.table_a add column descr varchar; end if; RAISE INFO '*************** test_add_column.sql completes'' ***************'; EXCEPTION WHEN OTHERS THEN RAISE NOTICE '*************** Patch ''test_add_column.sql'' fails : ErrCode (%) (%)', SQLSTATE, SQLERRM; RAISE;END;$$;保存为/home/kian.gao/Desktop/test_add_column.sql

5、在psql中使用\i /home/kian.gao/Desktop/test_add_column.sql 命令执行该sql文件即可, 多次运行也不会报错,如果没有事先判断多次运行就会报错,因为该列已经存在。

Postgresql中如何给表添加新列

6、希望能对Postgresql初学者有所帮助!

  • Xshell如何同时向多个会话、连接发出指令
  • 如何使用gitlab查看项目列表
  • K662c如何查找设备并设定静态地址
  • Linux中如何下载安装老版本的谷歌浏览器
  • Xshell怎么开启双击选项卡复制ssh通道功能
  • 热门搜索
    二年级最简单中秋节手抄报 缅怀先烈的手抄报内容 感恩手抄报内容大全 文明礼仪手抄报名言 科普知识手抄报内容 手抄报感恩老师 核心价值观手抄报内容 国庆节手抄报简单又漂亮字少 民族团结手抄报资料 弘扬民族精神手抄报