华为GaussDB入门级开发者认证–实验教程

华为GaussDB入门级开发者认证–实验教程

分享一下教程,考之前没有找到完整的教程,那我就简单分享一下。 不知道每个人的题是不是都一样的,可以作为参考。
我的题主要有一下这几个
任务1:用户与数据库初始化
创建新用户和数据库,执行数据导入操作。

任务2:应用配置调整
修改应用程序的数据库连接配置,确保与新建的GaussDB数据库正确对接。

任务3:功能逻辑优化
调整“”功能模块中“理财资产信息”的查询逻辑,包括返回结果的内容及排序规则。

任务4:余额查询功能实现
在Java代码中编写SQL语句,完成“查询卡余额”功能模块的开发。

任务5:开卡业务数据记录
客户开卡时,通过Java代码执行SQL插入操作,新增一条对应的存/取款信息记录。

任务6:销卡业务数据清理
客户销卡时,通过Java代码执行SQL删除操作,移除该卡关联的存/取款信息。

任务7:存取款功能开发
在Java代码中整合SQL语句,实现完整的“存取款业务”功能模块。

任务1基本都一样的创建环境,之类的。主要的点可以记一下。
首先通过root账号登录数据库

gsql -h xxx.xx.xx.x -d postgres -p 8000 -U root -W yourpassword -r

然后创建用户,并付给权限,注意要替换成自己实验的用户名

CREATE USER joe PASSWORD 'yourpassword';
ALTER USER joe with sysadmin;

然后创建创建名为finance的数据库,编码格式采用默认的UTF-8,数据库的所有者为db_dev用户

CREATE DATABASE finance OWNER db_dev ENCODING 'UTF8';

使用db_dev用户通过gsql客户端,将ECS弹性云服务器中/root目录下的create_object.sql文件导入finance数据库中

gsql -d finance -U db_dev -p 8000 -h <GaussDB服务器IP地址> -W 密码 -f /root/create_object.sql

数据导入完成后,使用db_dev用户通过gsql客户端登录finance数据库
就是把上面的root替换成新建的用户和密码就行

任务2: 就是进入他给的配置文件路径将里面的ip地址换成主节点的就可以了。

任务3: 就是查询financex下的表然后排序。我给个sql,可以照着改改。

SELECT 
    n.nspname AS schema_name,
    c.relname AS table_name,
    c.reltuples::bigint AS table_rows
FROM pg_class c
JOIN pg_namespace n ON n.oid = c.relnamespace
WHERE n.nspname = 'finance' 
  AND c.relkind = 'r'   -- r 表示普通表
ORDER BY table_rows;

任务4-7: 我这主要是修改他的一个java文件,其实就是将sql写到文件里面,里面的功能都写好了,就写sql就可以。 类似这样的代码,需要把sql写到conn.prepareStatement()里面。
华为GaussDB入门级开发者认证–实验教程2

华为GaussDB入门级开发者认证–实验教程2

下面的仅作参考:

public boolean insertCardAsset(String card_number) {
    PreparedStatement pstat = null;

    try {
        // 假设 CardAsset 表有 card_id, balance, currency 三个字段
        String sql = "INSERT INTO CardAsset (card_id, balance, currency) VALUES (?, ?, ?)";
        pstat = conn.prepareStatement(sql);

        pstat.setString(1, card_number);   // 卡号
        pstat.setInt(2, 0);                // 默认金额 0
        pstat.setString(3, "人民币");      // 默认币种 人民币

        pstat.execute();

        return Const.SUCCEED;
    } catch (SQLException ex) {
        System.err.println("SQLException information");
        while (ex != null) {
            System.err.println("Error msg: " + ex.getMessage());
            ex = ex.getNextException();
        }
        return Const.FAILED;
    }
}

然后都是这样的,就是增删改查。4个方法,写完了sql就完事了。整个实验也就完成了。
然后有几个点也需要注意下,改完文件后,要回到finance目录,先编译下,然后在运行。
编译:

javac -classpath ../../../ -d . *.java

运行:

java -p /root/db-dev-cert/libs/opengauss-jdbc-2.0.0.jar expt.db.finance.launch

还有写sql时要注意表名和字段名,可以另外打开一个命令窗口,先查出来,然后再对着写。