暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

「YashanDB个人版体验」崖山数据库的增删查改DEMO

原创 肖小可爱乐乐 2023-11-17
970

前言

​ 本文适合想快速进入体验崖山数据库的开发者。你可以从文章里面有如下收获。

  • 崖山数据库创建用户名、密码及相关权限。
  • 从哪 里下载崖山数据库的jdbc,下载后如何装进IDEA
  • 配置JDBC的相关注意事项
  • 对yashandb的增删查改的DEMO代码体验
  • jdbc对其它WEB框架的支持,目前的支持有限

准备环境

  • linux系统下崖山数据库个人版一个
  • windows下IDEA软件介质
  • yashandb-jdbc-1.5.1.jar

数据库环境

像使用Oracle一样使用yashandb,先创建数据库的用户名和密码。

SQL> CREATE USER xiao IDENTIFIED BY xiao1234;
Succeed.

SQL>GRANT connect to xiao;
Succeed.

SQL>ALTER USER xiao IDENTIFIED BY "xiao1234";
Succeed.

SQL>GRANT resource to xiao;
Succeed.

SQL>GRANT dba to xiao;
Succeed.

java下的增删查改开发

https://download.yashandb.com/download 下面找到 JAR对应的JDBC,如下

image.png

image.png

IDEA导入,点击Project Structure

image-20231117104957988

选 择+号

image.png

点击JAVA

image.png

选择JDBC驱动

image.png

确定应用

image.png

引用官方的代码如下,主要是修改JDBC连接串以及

com.yashandb.jdbc.Driver

jdbc:yasdb://192.168.153.128:1688/ya

package com.xiao; import java.sql.*; public class DemoYashan { //创建数据库连接。 public static Connection getConnection(String username, String passwd) { String driver = "com.yashandb.jdbc.Driver"; String sourceURL = "jdbc:yasdb://192.168.153.128:1688/ya"; Connection conn = null; try { //加载数据库驱动。 Class.forName(driver); } catch (Exception e) { e.printStackTrace(); return null; } try { //创建数据库连接。 conn = DriverManager.getConnection(sourceURL, username, passwd); System.out.println("Connection succeed!"); } catch (Exception e) { e.printStackTrace(); return null; } return conn; } //执行普通SQL语句,创建customer表。 public static void createTable(Connection conn) { Statement stmt = null; try { stmt = conn.createStatement(); //执行普通SQL语句。 stmt.execute("CREATE TABLE customer(id INTEGER, name VARCHAR(32))"); System.out.println("create table customer succeed!"); stmt.close(); } catch (SQLException e) { if (stmt != null) { try { stmt.close(); } catch (SQLException e1) { e1.printStackTrace(); } } e.printStackTrace(); } } //执行预处理语句,批量插入数据。 public static void batchInsertData(Connection conn) { PreparedStatement pst = null; try { //生成预处理语句。 pst = conn.prepareStatement("INSERT INTO customer VALUES (?,?)"); for (int i = 0; i < 3; i++) { //添加参数。 pst.setInt(1, i); pst.setString(2, "sales" + i); pst.addBatch(); } //执行批处理。 pst.executeBatch(); System.out.println("insert table customer succeed!"); pst.close(); } catch (SQLException e) { if (pst != null) { try { pst.close(); } catch (SQLException e1) { e1.printStackTrace(); } } e.printStackTrace(); } } public static void selectDAta(Connection conn) { Statement stmt = null; try { stmt = conn.createStatement(); //执行普通SQL语句。 ResultSet resultSet =stmt.executeQuery("select * from customer"); while (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); System.out.println("ID: " + id + ", Name: " + name ); } stmt.close(); } catch (SQLException e) { if (stmt != null) { try { stmt.close(); } catch (SQLException e1) { e1.printStackTrace(); } } e.printStackTrace(); } } public static void deleteDAta(Connection conn) { Statement stmt = null; try { stmt = conn.createStatement(); //执行普通SQL语句。 stmt.execute("delete from customer"); System.out.println("delete table customer succeed!"); stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } public static int execJdbcexample(String ctrls) { //创建数据库连接。 Connection conn = getConnection("xiao", "xiao1234"); //创建表。 createTable(conn); //批插数据。 batchInsertData(conn); selectDAta(conn); deleteDAta(conn); //关闭数据库连接。 try { conn.close(); } catch (SQLException e) { e.printStackTrace(); return 0; } return 1; } /** * 主程序,逐步调用各静态方法。 * @param args */ public static void main(String[] args) { int a = execJdbcexample("1"); } }

image.png

dbeaver连入yashandb

如果你是一个DBA,你也可以通过 dbeaver连入yashandb进行操作

菜音栏 数据库 --> 驱动管理器–> 新建

引入JDBC驱动以及正确的JDBC连接符

image.png

image.png

正式以yashan的jdbc进行创建

image.png

总结

基于WEB开发的增删查改能够顺利运行,但是集成知名框架例如mybatis显示不支持 崖山数据库,报错的内容如下,崖山数据库的生态需要继续扩大提升 。估计这个问题是JDBC的规范是有关系的,逛了官方一圈没有看到yashan是4.0规范还是5.0规范,JDBC不同的规格有不同的能力使用用途。

image.png

但是崖山有自己的jdbc驱动,这个侧面 说明它有属于自己的东西,以后兼容mybatis或者spring-boot是迟早以后的事情。

最后修改时间:2023-11-23 14:43:04
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论