Yashan DB 应用开发

devtools/2025/3/14 12:29:36/

一、YashanDB支持的驱动

YashanDB支持多种驱动,包括JDBC、C、Python、ADO.NET、ODBC等。以下是详细介绍:


1.JDBC驱动

• 定义:JDBC是Java连接数据库的技术统称。Java语言只提供规范(接口),规定数据库操作方法。

• 实现:YashanDB根据Java的JDBC规范(接口),完成具体的实现驱动代码(jar包)。

• 使用方式:

1. 通过`java.sql.*`包加载JDBC接口。

2. 使用`DriverManager`获取连接。

3. 使用`Connection`对象执行SQL语句。

4. 使用`Statement`、`PreparedStatement`或`CallableStatement`发送SQL语句。

5. 使用`ResultSet`接收查询结果。


2.Python驱动

• 定义:YashanDB的Python驱动是一个支持Python DB API协议的Python拓展模块(yaspy),使Python应用程序可以直接连接YashanDB数据库

• 模块内容:

• `yaspy.connect()`:创建数据库连接的构造函数。

• `Globals`:模块中定义的变量。

• `Connection`:Python应用程序到数据库的连接对象。

• `Cursor`:连接数据库后创建的游标对象。

• 使用方式:

1. 安装驱动包:`pip3 install yaspy-<version>-cp36-cp36m-linux_x86_64.whl`。

2. 引入驱动模块。

3. 获取连接。

4. 获取游标。

5. 执行SQL语句。

6. 关闭资源。


3.ODBC驱动

• 定义:ODBC(Open Database Connectivity,开放数据库互连)提供了一种标准的API方法来访问数据库,利用SQL完成大部分任务。

• 标准内容:

• ODBC函数调用库,用于连接数据源、执行SQL命令并检索结果。

• 基于SQL-99规范的SQL语法。

• 一套标准的错误码。

• 一套连接并登录到数据源的标准方式。

• 对数据类型的标准描述。

• 使用方式:详见官方文档。


---

二、案例:通过JDBC访问YashanDB


1.案例目标


明确JDBC流程,详细讲解使用方法。


2.环境准备

• 开发环境:IDEA开发环境、JDK、JDBC驱动包。

• 数据准备:创建用户、建表、插入数据。


3.核心类和接口

• DriverManager:注册第三方数据库驱动,获取数据库连接。

• Connection:与数据库建立连接,执行CRUD操作。

• Statement/PreparedStatement/CallableStatement:发送SQL语句到数据库

• ResultSet:存储查询结果,需解析获取数据。


4.使用路线

• 静态SQL路线:

• DriverManager→Connection→Statement→Result

• 预编译SQL路线:

• DriverManager→Connection→PreparedStatement→Result

• 执行存储过程:

• DriverManager→Connection→CallableStatement→Result


5.数据插入

1. 注册驱动。

2. 获取连接。

3. 创建`PreparedStatement`并传入SQL语句。

4. 占位符赋值。

5. 执行SQL语句。

6. 关闭资源。


6.数据查询

1. 注册驱动。

2. 获取连接。

3. 创建`PreparedStatement`并传入SQL语句。

4. 占位符赋值。

5. 执行SQL语句并返回结果集。

6. 解析结果集对象。

7. 关闭资源。


---

三、案例:通过Python访问YashanDB


1.环境准备

• 安装Python 3.6.8:`yum -y install python3`。

• 安装YashanDB Python驱动包:`pip3 install yaspy-<version>-cp36-cp36m-linux_x86_64.whl`。


2.功能实现

1. 引入驱动模块。

2. 获取连接。

3. 获取游标。

4. 执行SQL语句。

5. 关闭资源。


---


http://www.ppmy.cn/devtools/167023.html

相关文章

Visual Studio关闭警告

Visual Studio关闭警告信息 下面的例子基于VS2019, 其他版本类似。 新建项目之后&#xff0c;在里面写一些会产生警告的代码&#xff0c;如&#xff1a; char c 666; 编译器会警告&#xff1a; 除了警告&#xff0c;运行结果也会有问题。可以考虑把警告信息关掉&#xff1a; …

蓝桥与力扣刷题(蓝桥 螺旋折线)

题目&#xff1a;如下图所示的螺旋折线经过平面上所有整点恰好一次。 对于整点 (X,Y)&#xff0c;我们定义它到原点的距离 dis(X,Y) 是从原点到 (X,Y) 的螺旋折线段的长度。 例如 dis(0,1)3,dis(−2,−1)9。 给出整点坐标 (X,Y)&#xff0c;你能计算出 dis(X,Y) 吗&#xff1…

【医院绩效管理专题】8.医院绩效数据的收集与整理方法:洞察现状,引领未来

医院成本核算、绩效管理、运营统计、内部控制、管理会计专题索引 一、引言 在当今医疗行业竞争日益激烈的背景下,医院绩效管理已成为提升医疗服务质量、优化运营效率、增强综合竞争力的关键因素。而绩效数据的收集与整理作为绩效管理的基础环节,其科学性、准确性和完整性直…

ResNet改进(4):添加Inception 结构

1.Inception 结构 Inception 结构是由 Google 提出的经典卷积神经网络架构&#xff0c;首次出现在 2014 年的论文《Going Deeper with Convolutions》中&#xff0c;并在 ImageNet 图像分类竞赛中取得了优异成绩。Inception 结构的目标是通过多尺度卷积和高效计算来提升网络性…

《苍穹外卖》SpringBoot后端开发项目核心知识点与常见问题整理(DAY1 to DAY3)

目录 一、在本地部署并启动Nginx服务1. 解压Nginx压缩包2. 启动Nginx服务3. 验证Nginx是否启动成功&#xff1a; 二、导入接口文档1. 黑马程序员提供的YApi平台2. YApi Pro平台3. 推荐工具&#xff1a;Apifox 三、Swagger1. 常用注解1.1 Api与ApiModel1.2 ApiModelProperty与Ap…

e2studio开发RA4L1(1)---开发板测试

e2studio开发RA4L1.1-- 开发板测试 概述视频教学样品申请产品特性参考程序源码下载硬件准备新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置GPIO口配置UART配置UART属性配置设置e2studio堆栈e2studio的重定向printf设置主程序 概述 RA4L1 评估套件可以使用户能够无…

计算机视觉算法实战——手势识别(主页有源码)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​ ​​​ 1. 领域简介&#xff1a;手势识别的价值与挑战 手势识别是连接人类自然行为与数字世界的核心交互技术&#xff0c;在智能设备控制、…

docker安装及使用介绍

文章目录 docker安装及使用安装 dockerdocker 常用命令docker 基本命令容器镜像卷网络命令Docker ComposeDocker 系统命令 在docker中安装ROS2 humble拉取 ROS 2 Docker 镜像运行 ROS 2 Docker 容器配置 ROS 2 环境接收外部 ROS 2 话题注意事项 ros1 和docker ros2通信使用 ros…