问题起因
前几天一个朋友问到这样的问题:

手头正好有个磐维2.0(兼容A模式)的单机版数据库,下面编写java代码连接测试环境的磐维数据库来测试一下!
测试环境说明
磐维数据库:2.0.0单机版
jdbc驱动:PanWeiDB-V2.0-JDBC-2.0.2_B02.tar.gz
jdk版本:1.8
创建测试库和表
create database yewudb1;
create user testusr with password 'Wel%1234';
create table testtab(id int,d1 timestamp,d2 timestamp);
编写JAVA测试代码
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties;
public class DbTest {
public static void main(String[] args) {
String sql = "declare "
+"i_home_city number ( 3 );"
+"BEGIN "
+"INSERT INTO testtab values ( ? , TO_DATE ( ? , 'yyyy-MM-dd HH24:mi:ss' ) , TO_DATE ( ? , 'yyyy-MM-dd HH24:mi:ss' ) );"
+"COMMIT; "
+"END;";
Properties properties = new Properties();
properties.put("user", "testusr");
properties.put("password", "Wel%1234");
Connection connection = null;
try {
connection = DriverManager.getConnection("jdbc:panweidb://192.*.*.*:17700/yewudb1?currentSchema=testusr&useUnicode=true&characterEncoding=utf-8", properties);
CallableStatement cs =connection.prepareCall(sql);
cs.setObject(1,1);
cs.setObject(2,"2024-05-12 10:00:00");
cs.setObject(3,"2024-05-12 10:00:00");
cs.execute();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
注意:
由于我是连接单实例数据库环境测试的,所以jdbc连接串里面没写连接到master节点,实际生产环境中jdbc连接串需要这么写:jdbc:panweidb://10.xx.xx.1:17700,10.xx.xx.2:17700,10.xx.xx.3:17700/database_name?targetServerType=master¤tSchema=schema_name&useUnicode=true&characterEncoding=utf-8
运行java测试代码
使用开发工具运行即可。
测试结果

可以看出,运行java代码之后,数据已经成功插入到表里面了。
结论
使用jbdc访问磐维数据库(兼容A模式)时,是支持匿名块和绑定变量写法的。
最后修改时间:2024-07-19 10:23:43
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




