Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何在金仓数据库KingbaseES中新建一个数据库?新建一个表?给表添加一个字段?

如何在金仓数据库KingbaseES中新建一个数据库?新建一个表?给表添加一个字段?

作者头像
猫头虎
发布于 2025-05-09 00:37:31
发布于 2025-05-09 00:37:31
34000
代码可运行
举报
运行总次数:0
代码可运行

如何在KingbaseES(金仓数据库)中新建一个数据库?新建一个表?给表添加一个字段?

摘要

KingbaseES(金仓数据库)新建数据库、创建表、添加字段全流程实战指南,涵盖 KES 数据库属性、sys_database 系统表查询、sys_database_size 磁盘空间监控;基于图形界面快速创建数据库、表及字段;SQL 语句详解:CREATE DATABASEcreatedbCREATE TABLEALTER TABLE ADD COLUMN;模板库(template0/template1)、编码(UTF8/GBK/GB18030)、表空间管理、权限配置、DDL 脚本生成;适用于 ksql/psql 客户端、命令行工具和可视化管理工具的数据库对象管理与数据定义语言(DDL)最佳实践。

如何在金仓数据库KingbaseES中新建一个数据库?新建一个表?给表添加一个字段?
如何在金仓数据库KingbaseES中新建一个数据库?新建一个表?给表添加一个字段?

1. 问题

如何在 KingbaseES(金仓数据库)中:

  • 新建一个数据库?
  • 在该数据库中新建一个表?
  • 给已有表添加一个字段?

2. 概述

本文将从 KingbaseES 的基本概念与属性入手,详细介绍三种方式创建数据库,并演示如何通过图形界面与 SQL 语句完成表的创建和字段的添加。阅读完本文,您将掌握在 KingbaseES 中进行常见 DDL(数据定义语言)操作的全流程。


3. 数据库属性

在 KingbaseES 中,数据库(Database)是多个数据库对象(表、索引、序列、视图等)的命名集合。一个实例(Instance)中可以包含多个数据库。每个数据库内的对象相互隔离,但可以通过系统表如 sys_databasesys_schema 查看和管理。

  • sys_database:列出实例中所有数据库名称、所有者、编码等信息。
  • sys_database_size(‘dbname’):返回指定数据库所占磁盘空间大小。
  • 模板库template0template1,用于在创建新库时复制初始结构。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- 查看已有数据库列表
SELECT datname, datdba, encoding, datcollate, datctype
  FROM sys_database;
  
-- 查看 test 库大小
SELECT sys_database_size('test');

4. 创建一个KES数据库

在 KingbaseES 中,常见的创建数据库方式有三种:

  1. 基于图形界面
  2. 通过 SQL 语句 CREATE DATABASE
  3. 通过命令行工具 createdb
4.1. 基于图形界面创建一个KES数据库
  1. 启动 KingbaseES 管理客户端,连接到目标实例。
  2. 在左侧导航树中,右键点击 “数据库” 节点,选择 “新建数据库”
在这里插入图片描述
在这里插入图片描述
  1. 在弹出的向导中,按页填写信息:
    • 基本属性页
      • 名称:指定新数据库名,不得与现有库重复。
      • 属主:默认当前用户,可更改为其他已存在角色。
      • 编码:默认为 UTF8,可选 ASCII、GBK、GB18030。
    • 权限页:为其他用户/角色分配 CONNECT、CREATE 等权限。
    • DDL 页:查看最终生成的 CREATE DATABASE 语句。
  2. 点击 确定 完成创建。

在向导中,可随时切换到 DDL 页,复制生成的 SQL,便于后续脚本化部署。

4.2. 通过 CREATE DATABASE 创建一个KES数据库

使用 SQL 语句直接在客户端(如 ksql、psql)中执行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- 仅指定库名,默认属主为当前连接用户
CREATE DATABASE mydb;

-- 指定属主和编码
CREATE DATABASE mydb
  WITH
    OWNER = dbuser
    ENCODING = 'UTF8'
    TEMPLATE = template1
    TABLESPACE = pg_default;

注意事项

  1. 数据库名必须符合标识符规则,避免使用保留字。
  2. 普通用户只能创建属于自己的数据库;若要创建其他属主的库,需使用超级用户 system
4.3. 通过 createdb 创建一个KES数据库

createdb 是 KingbaseES 提供的命令行辅助工具,本质上会登录实例并执行 CREATE DATABASE

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 使用默认参数,以当前系统用户名创建同名数据库
$ createdb demo

# 指定端口、主机、属主等
$ createdb -h 127.0.0.1 -p 54321 -U system -O dbuser -T template1 demo
  • -h服务器地址
  • -p:端口号
  • -U:连接用户名
  • -O:新库属主
  • -T:指定模板库

5. 新建一个表

创建完数据库后,需要在其中定义表结构。KingbaseES 的表创建方式也有两种:图形界面与 SQL 语句。

5.1. 基于图形界面新建一个表
  1. 在管理客户端中,连接到目标数据库 mydb
  2. 展开左侧树形结构至 “模式(Schemas)” → “public” → “表(Tables)”
  3. 右键 “表”,选择 “新建表”
  4. 在向导中填写:
    • 表名表空间
    • 列定义:逐行添加列名、数据类型、长度、是否可空、默认值等。
    • 主键/索引:在相关页签定义主键或其他索引。
  5. 查看生成的 CREATE TABLE DDL,点击确认完成。
5.2. 通过 CREATE TABLE 新建一个表

在 SQL 客户端中执行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- 示例:创建用户表
CREATE TABLE public.users (
  id        BIGSERIAL PRIMARY KEY,
  username  VARCHAR(50) NOT NULL UNIQUE,
  email     VARCHAR(100),
  created_at TIMESTAMP WITHOUT TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

-- 查看表结构
\d+ public.users;
  • BIGSERIAL:自增主键
  • VARCHAR(n):变长字符
  • NOT NULL:非空约束
  • UNIQUE:唯一约束
  • DEFAULT:默认值

6. 给表添加一个字段

当业务需求变化时,可能需要在已有表中增加新字段。KingbaseES 支持在图形界面或通过 ALTER TABLE 完成。

6.1. 基于图形界面给表添加字段
  1. 在管理客户端中,连接到 mydb,找到目标表 public.users
  2. 右键点击该表,选择 “修改表”
  3. “列” 页签点击 “添加”,输入新列名、类型、默认值、约束等。
  4. 确认后,客户端会执行相应的 ALTER TABLE 语句。
6.2. 通过 ALTER TABLE 给表添加字段

在 SQL 客户端中执行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- 为 users 表新增 last_login 字段
ALTER TABLE public.users
  ADD COLUMN last_login TIMESTAMP WITHOUT TIME ZONE;

-- 带默认值且非空
ALTER TABLE public.users
  ADD COLUMN status VARCHAR(20) NOT NULL DEFAULT 'active';
  • ADD COLUMN:添加新列
  • 可同时指定 NOT NULLDEFAULTCHECK 等约束

查看修改结果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
-- 再次查看表结构
\d+ public.users;

通过以上步骤,您已掌握 KingbaseES 中创建数据库、建表与扩展表结构的核心操作。建议在生产环境中,将这些 DDL 操作纳入版本控制,并在测试库演练后,再应用到线上数据库,以确保安全无误。祝您使用愉快!

7. 结论

通过本文的介绍,您已经全面掌握了在 KingbaseES(金仓数据库)中创建数据库、建表以及给表添加字段的三种主流方法:图形界面操作、SQL DDL 语句(CREATE DATABASE/CREATE TABLE/ALTER TABLE)和命令行工具(createdb)。在实际应用中,建议您:

  • 结合版本控制:将所有 DDL 脚本纳入 Git 等版本管理系统,便于回滚与审计。
  • 规范命名与编码:统一数据库、表、字段命名规则,确保字符集(UTF8、GBK、GB18030)与排序规则一致。
  • 权限与安全:合理分配属主与访问权限,使用最小权限原则保障数据安全
  • 测试与演练:在测试环境中演练所有操作后,再推送至生产环境,降低因脚本错误带来的风险。

掌握这些核心操作与最佳实践,将助您在 KingbaseES 中高效、可靠地管理数据库架构,提升开发与运维的自动化与可维护性。如需进一步深入,请查阅官方文档或探索更多高级特性,例如表分区、并行查询与逻辑复制。祝您数据库管理之旅顺利!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【金仓数据库征文】MySQL 与 KingbaseES 的华丽转身:揭秘迁移路上的最佳实践秘籍
通常,异构数据库移植的工作量繁重。这些工作量主要来源于:在数据类型、SQL 语言、PL/SQL 语言、甚至客户端应用编程接口等诸多方面对两个数据库所进行的、大量的语法或功能的对齐处理。
枫叶丹
2025/04/26
1690
【金仓数据库征文】必看!轻松搞定 KingbaseES 数据库安装秘籍(Windows 系统版)
KingbaseES(简称KES)是面向全行业、全客户关键应用的企业级大型通用融合数据库产品,适用于事务处理类应用、数据分析类应用、海量时序数据采集检索类应用、要求苛刻的互联网应用等场景;可用作管理信息系统、业务及生产系统、决策支持系统、多维数据分析系统、运行日志管理系统、全文检索系统、地理信息系统、时序数据处理相关系统的承载数据库。 KES采用融合数据库架构,通过多语法体系一体化架构实现一套软件兼容Oracle、MySQL、SQL Server、PostgreSQL等多个异构数据库的语法; 采用多模数据一体化存储,支持对关系模型、文档模型、全文本、GIS数据、时序等数据的统一存储、混合访问、模型间转换; 采用集中分布一体化架构,满足不同级别的可用性,为客户提供不同级别的可用性、性能扩展、成本需求,确保业务连续,最大化投资价值。
枫叶丹
2025/04/26
1690
【金仓数据库征文】必看!轻松搞定 KingbaseES 数据库安装秘籍(Windows 系统版)
数据库PostrageSQL-管理数据库
每个正在运行的PostgreSQL服务器实例都管理着一个或多个数据库。因此,在组织SQL对象(“数据库对象”)的层次中,数据库位于最顶层。本章描述数据库的属性,以及如何创建、管理、删除它们。
cwl_java
2020/12/16
2.3K0
PostgreSQL 具有createdb的用户无法创建数据库的原因(之一)
最近有人问我,PostgreSQL的模板数据库的问题,说在模板数据库中打入了一些表和存储过程,并且还调整了extension的部分,但打入完毕后,通过模板数据库来创建数据库失败了,ERROR: permission denied to copy database "template1",但他确认他有createdb的数据库权限。
AustinDatabases
2024/11/25
4410
PostgreSQL 具有createdb的用户无法创建数据库的原因(之一)
PostgreSQL数据库连接和数据库管理
首先我们需要通过multipass启动安装了PostgreSQL的虚拟机,然后我们就可以开启PostgreSQL数据库之旅了。
SQLplusDB
2023/08/17
5230
PostgreSQL数据库连接和数据库管理
国产数据库崛起:从零到精通!KingbaseES金仓数据库超详细安装使用指南
KingbaseES 是中电科金仓(北京)科技股份有限公司研发的,具有自主知识产权的通用数据库产品。该产品是面向全行业、全客户关键应用的企业级大型通用数据库管理系统,适用于事务处理类应用、数据分析类应用、海量时序数据采集检索等应用场景,可用做管理信息系统、业务及生产系统、决策支持系统、多维数据分析、全文检索、地理信息系统、图片搜索、时序数据等的承载数据库。 今天给大家出一个金仓数据库KingbaseES超详细安装使用指南,从数据库下载、安装到可视化IDE KStudio工具的建库及使用。
xcLeigh
2025/04/22
4720
国产数据库崛起:从零到精通!KingbaseES金仓数据库超详细安装使用指南
如何在CentOS 7上安装PostgreSQL关系数据库
PostgreSQL关系数据库系统是一个功能强大的,可扩展的,并符合标准的开源数据库平台。本指南将帮助您在CentOS 7 Linode上安装和配置PostgreSQL。
沈唁
2018/09/20
4.9K0
数据库PostgreSQL-安装
自然,在你能开始使用PostgreSQL之前, 你必须安装它。PostgreSQL很有可能已经安装到 你的节点上了, 因为它可能包含在你的操作系统的发布里, 或者是系统管理员已经安装了 它。如果是这样的话, 那么你应该从操作系统的文档或者你的系统管理员那里获取有关如 何访问PostgreSQL的信息。
cwl_java
2020/09/01
3.6K0
【MySQL】:DDL数据库定义与操作
Data Definition Language,数据定义语言,用来定义数据库对象(数据库,表,字段) 。
屿小夏
2024/01/22
3330
【MySQL】:DDL数据库定义与操作
HAWQ技术解析(六) —— 定义对象
本文介绍了HAWQ中的一些基本概念和操作,包括创建表、插入数据、删除表和视图、查看表定义、查看视图定义、表的存储、表的清理以及过程语言。同时,还介绍了如何通过HAWQ访问HDFS文件系统。
用户1148526
2018/01/03
3K0
MYSQL数据库-库/表操作
MYSQL数据库-库表操作 零、前言 一、库的操作 1、创建数据库 2、字符集和校验规则 3、查看数据库 4、修改数据库 5、数据库删除 6、备份和恢复 7、查看连接情况 二、表的操作 1、创建表 2、查看表 3、修改表 4、删除表 4、删除表 零、前言 本章主要学习MYSQL数据库中库操作和表操作 一、库的操作 1、创建数据库 语法: CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specificati
用户9645905
2022/11/15
5.7K0
MYSQL数据库-库/表操作
MySQL 数据库常用命令小结
mysqladmin drop databasename 删除数据库前,有提示。
阳光岛主
2019/02/19
1.1K0
【金仓数据库征文】政府项目数据库迁移:从MySQL 5.7到KingbaseES的蜕变之路
项目背景:2019年给政府做的微服务项目,使用的是mysql5.7,最近突然收到通知,要求迁移数据库到KingbaseES,一开始没听说过这个数据库有点慌,经过一番学习觉得是国产很优秀数据库,下面是我迁移过程的心得记录。
正在走向自律
2025/05/11
1360
【金仓数据库征文】政府项目数据库迁移:从MySQL 5.7到KingbaseES的蜕变之路
MySQL数据库——数据库CRUD之基本DDL操作数据库及DML操作表
SQL,Structured Query Language,结构化查询语言,其实就是定义了操作所有关系型数据库的规则。但是每种数据库厂商不一样,每一种数据库操作的方式存在不一样的地方,称为“方言”。
Winter_world
2020/09/25
1.6K0
MySQL数据库——数据库CRUD之基本DDL操作数据库及DML操作表
haue数据库原理第一次实验
(1)学会使用MySQL 图形界面工具进行数据库相关操作。 (2)掌握使用SQL语句创建、选择、删除数据库。 (3)掌握使用SQL语句创建、修改、删除表。 (4)掌握使用SQL语句对表进行插入、修改和删除数据操作。 (5)学会使用SQL命令进行数据库备份的操作方法。 (6)学会使用SQL命令进行数据库恢复的操作方法。
南桥
2024/11/02
1190
haue数据库原理第一次实验
【金仓数据库征文】-不懂数据库也能看懂!一文解析金仓技术介绍以典型应用
想象一下,你点外卖时突然发现所有店铺消失,网购付款总提示失败,去银行办业务被告知查不到账户信息…… 这些崩溃瞬间,大概率是数据库 “罢工” 了。在数字化时代,数据库就像一个 24 小时在线的 “超级大管家”,默默管理着各行各业的海量数据。比如,电商平台用它记录你的购物车、订单和支付信息;医院用它存储患者病历、检查报告;交通系统用它实时监控红绿灯、车辆轨迹。如果把互联网比作人体,数据库就是 “大脑”—— 负责存储、整理和快速调取数据,让每一个业务流程顺利跑起来。
羑悻的小杀马特.
2025/04/26
1880
【金仓数据库征文】-不懂数据库也能看懂!一文解析金仓技术介绍以典型应用
2024Mysql And Redis基础与进阶操作系列(2)作者——LJS[含MySQL登录;DDL;DML;举例说明;编码等详解步骤及常见报错问题对应的解决方法]
在前面的配置过程中,已经将MySQL安装为Windows服务,并且勾选当Windows启动、停止时, MySQL也 自动启动、停止。
盛透侧视攻城狮
2024/10/22
2380
2024Mysql And Redis基础与进阶操作系列(2)作者——LJS[含MySQL登录;DDL;DML;举例说明;编码等详解步骤及常见报错问题对应的解决方法]
MSSQL系列之二.二数据库与表管理
--DDL:CREATE,Alter,Drop:针对所有的数据库对象,基本都是都有效.
张哥编程
2024/12/13
2330
【MySQL学习笔记】数据库/数据表的创建、查看、选择与修改
在MySQL数据库的学习中,数据库、数据表和数据的操作,不仅仅是必须掌握的内容,也是学习后续的基础噢~ 本期主要内容为: 数据库的创建、查看、选择与删除 数据表的创建、查看、选择与删除
颜颜yan_
2022/12/01
3.4K0
【MySQL学习笔记】数据库/数据表的创建、查看、选择与修改
数据库PostrageSQL-模板数据库
CREATE DATABASE实际上通过拷贝一个已有数据库进行工作。默认情况下,它拷贝名为template1的标准系统数据库。所以该数据库是创建新数据库的“模板”。 如果你为template1数据库增加对象,这些对象将被拷贝到后续创建的用户数据库中。 这种行为允许对数据库中标准对象集合的站点本地修改。例如,如果你把过程语言PL/Perl安装到 template1中,那么你在创建用户数据库后不需要额外的操作就可以使用该语言。
cwl_java
2020/12/16
9990
推荐阅读
相关推荐
【金仓数据库征文】MySQL 与 KingbaseES 的华丽转身:揭秘迁移路上的最佳实践秘籍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档