【数据库】零门槛在线体验KingbaseES平台,SQL Server模式高阶玩法,动态创建数据体验函数、存储过程等功能

KingbaseES是一款面向全行业、全客户关键应用的企业级大型通用融合数据库产品,适用于事务处理类应用、数据分析类应用、海量时序数据采集检索类应用、要求苛刻的互联网应用等场景。

目录

前言

上一篇文章博主已经零门槛学习了KingbaseES,并通过创建例子来体验了Oracle。

本篇文章将通过SQL Server模式来体验高阶玩法。

上篇文章:【数据库】在线体验KingbaseES平台,零门槛学习,并快速体验Oracle增改查全基础功能

在线体验

体验地址:https://bbs.kingbase.com.cn/index

体验平台兼容模式Oracle 、Pg、MySQL、SQL Server

博主本次体验兼容模式为SQL Server

下面选择SQL Server体验

SQL Server体验

前一篇文章已经进行数据库基础初始化,直接创建表和操作功能即可。

本次将通过创建一个学生成绩表来体验函数、存储过程等功能。

创建学生成绩表

学生成绩表:编号、学生姓名、学生科目、学生成绩、学生年级

sql 复制代码
create table student_score(
	id int primary key identity(1,1),
	student_name varchar(50),
	student_subject varchar(50),
	student_score decimal(18,1),
	student_class varchar(50)
)

模拟生成姓名

博主通过创建函数的方式随机生成学生姓名

sql 复制代码
CREATE FUNCTION GenerateRandomChineseName()
RETURNS TABLE
AS
RETURN
(
    WITH Surnames AS (
        SELECT surname FROM (VALUES
            ('李'),('王'),('张'),('刘'),('陈'),
            ('杨'),('赵'),('黄'),('周'),('吴'),
            ('徐'),('孙'),('胡'),('朱'),('高'),
            ('林'),('何'),('郭'),('马'),('罗')
        ) AS S(surname)
    ),
    GivenNames AS (
        SELECT name FROM (VALUES
            ('伟'),('芳'),('娜'),('秀英'),('敏'),
            ('静'),('丽'),('强'),('磊'),('军'),
            ('洋'),('勇'),('艳'),('杰'),('娟'),
            ('涛'),('明'),('超'),('秀兰'),('霞'),
            ('平'),('刚'),('桂英'),('玉兰'),('萍')
        ) AS N(name)
    )
    SELECT TOP 1 
        S.surname + G.name AS FullName
    FROM Surnames S
    CROSS JOIN GivenNames G
    ORDER BY NEWID()
)

查询

随机生成成绩

同样通过创建函数的方式随机生成成绩分数

sql 复制代码
CREATE FUNCTION GenerateRandomScore2()
RETURNS INT
AS
BEGIN
    -- 生成50-100之间的随机整数
    RETURN CAST(RAND() * 51 + 50 AS INT)
END

创建存储过程

通过创建存储过程来生成某个班级某个科目的学生成绩。

传递参数:年级、科目、人数

先测试添加一条数据

sql 复制代码
declare @studentName varchar(50)
declare @studentScore decimal(18,1)
select @studentName=GenerateRandomChineseName() 
select @studentScore=GenerateRandomScore2() 

insert into student_score(student_name,student_subject,student_score,student_class)
values(@studentName,'语文',@studentScore,'六年级')


存储过程

sql 复制代码
CREATE PROCEDURE sp_GenerateClassScores
    @Grade NVARCHAR(20),       -- 年级参数,如'一年级'
    @Subject NVARCHAR(50),     -- 科目参数,如'数学'
    @StudentCount INT          -- 学生人数
AS
BEGIN
     -- 生成学生数据
    DECLARE @i INT = 1;
    WHILE @i <= @StudentCount
    BEGIN
    	declare @studentName varchar(50)
        declare @studentScore decimal(18,1)
        select @studentName=GenerateRandomChineseName() 
        select @studentScore=GenerateRandomScore2() 

        insert into student_score(student_name,student_subject,student_score,student_class)
        values(@studentName,@Subject,@studentScore,@Grade)
        
        SET @i = @i + 1;
    END
END;

执行效果

体验感受

同样非常丝滑,函数、存储过程这些高阶玩法同样支持,速度上也非常快,又是一次不错的体验,这也让我深深感受到云端数据库的便捷和高效,有了KingbaseES平台这样平台,再也不用担心复杂安装和部署的情况,并且是零门槛快速上手,真正得到了质的飞跃。

核心优势

无环境依赖,即开即用

  1. 免安装、免配置

    • 无需下载数据库安装包,无需本地部署,避免因环境差异导致的兼容性问题。
    • 直接通过网页访问云端KingbaseES实例,支持主流浏览器(Chrome、Edge、Firefox等)。
  2. 交互式SQL操作

    • 提供在线SQL编辑器 ,支持编写、调试与执行SQL语句(如SELECTINSERTCREATE TABLE等)。
    • 实时返回执行结果,帮助用户快速验证SQL语法及查询逻辑。
  3. 预置教学场景模板

    • 内置交互式学习案例(如电商订单管理、学生成绩分析等),用户可跟随指引逐步操作,掌握数据库基础技能。
    • 提供典型行业场景(如政务、金融)的模拟数据,便于理解实际应用。
  4. 低学习曲线

    • 界面友好,支持语法高亮、自动补全等辅助功能,降低新手操作难度。
    • 兼容主流数据库(如Oracle/MySQL)语法,方便用户迁移学习。

适用人群与场景

  • 初学者:零基础学习SQL和数据库原理,无需搭建复杂环境。
  • 开发者:快速验证KingbaseES兼容性,测试SQL脚本或迁移方案。
  • 企业技术选型:低成本体验国产数据库功能,评估信创替代可行性。

通过在线体验平台,用户能以最低成本快速入门国产数据库技术,为后续开发或信创迁移奠定基础! 🚀

延伸学习

若需更深入掌握KingbaseES,可结合以下资源:

官方文档与教程(官网下载)

本地部署试用版(支持30天免费使用)

参与金仓认证培训(如KCA/KCP认证课程)

相关推荐
日月星宿~9 分钟前
【redis】数据结构及操作命令
数据结构·数据库·redis
范纹杉想快点毕业25 分钟前
Qt构造函数详解:布局与快捷键实战
c语言·开发语言·数据库·c++·qt·命令模式
莱茵不哈哈36 分钟前
DB面试题
数据库·tidb·etcd
TDengine (老段)37 分钟前
使用 Prometheus 访问 TDengine ---
大数据·数据库·prometheus·时序数据库·iot·tdengine·涛思数据
是店小二呀3 小时前
全面探索 KingbaseES 在线数据库平台:从开发到优化的全方位体验
数据库
将心ONE3 小时前
subprocess.check_output和stdout有什么不同 还有run和popen
java·数据库·microsoft
isNotNullX4 小时前
据字典是什么?和数据库、数据仓库有什么关系?
大数据·数据库·数据仓库·oracle·数据治理
考虑考虑4 小时前
数据库唯一索引
数据库·后端·mysql
AA-代码批发V哥4 小时前
MySQL之事务深度解析
数据库·mysql
里探5 小时前
在Django中把Base64字符串保存为ImageField
数据库·django