今天用jdbc批量添加数据的时候遇到了一个问题,当数据添加成功过后,再想对该表进行操作发现表被锁住了,检查了下代码发现事务提交了呀!!!!!!!!!!!! 去网上查了大半天的资料才发现问题,在connection  commit过后需要加上 connection.setAutoCommit(true); 下面是示例代码 log.info("插入语句" + sql); //获取结果集 connection = JdbcUtils.getConnection(database.getMys…
java操作elasticsearch实现批量添加主要使用了bulk 代码如下: //bulk批量操作(批量添加) @Test public void test7() throws IOException { //1.指定es集群 cluster.name 是固定的key值,my-application是ES集群的名称 Settings settings = Settings.builder().put("cluster.name", "my-application"…
--查看哪些表被锁住了select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.OBJECT_ID; --查询引起死锁的会话select b.username,b.sid,b.serial#,logon_time from v$locked_object a , v$session b where a.session_id =…
想修改Oracle下的某一张表,提示 "资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效" 看上去是锁住了. 用系统管理员登录进数据库,然后 SELECT sid, serial#, username, osuser FROM v$session where sid in(select session_id from v$locked_object); --kill掉相关的会话 ALTER SYSTEM KILL SESSION '597,1171';--sid,ser…
public class App { public static void main( String[] args ) { //JDBC驱动 String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=model"; String userName = "sa…
  java.sql.Types 值 Java 类型 IBM DB2 Oracle Sybase SQL Informix IBM Content Manager   BIGINT java.lang.long BIGINT NUMBER (38, 0) BIGINT BIGINT INT8 DK_CM_BIGINT   BINARY byte[] CHAR FOR BIT DATA RAW BINARY IMAGE BYTE DK_CM_BLOB   BIT java.lang.Boolean…
ALTER TABLE custom ADD contacts2 VARCHAR(50) NOT NULL DEFAULT '' COMMENT '客户联系人2',ADD phone2 VARCHAR(20) NOT NULL DEFAULT '' COMMENT '联系人2手机',ADD other_contact2 VARCHAR(50) NOT NULL DEFAULT '' COMMENT '联系人2其他联系方式(微信/QQ)',ADD contacts_position2 VARCHA…
\\ 查询被锁的对象.来源.sid和serial select object_name, machine, s.sid, s.serial# from v$locked_object l, dba_objects o, v$session s where l.object_id = o.object_id and l.session_id = s.sid \\ 杀死会话链接,SID和SERIAL 要对应上 alter system kill session ','; \\ 如果报错,则执行以下操…
首先来看一下原生JDBC访问数据库的代码: public static void main(String[] args) { // 数据库连接 Connection connection = null; // 预编译的Statement,使用预编译的Statement提高数据库的性能 PreparedStatement statement = null; // 结果集 ResultSet resultSet = null; try { // 加载数据库驱动 Class.forName("com.…
在项目中我们偶尔可能会遇到批量向数据库中导入数据,如果批处理的情况较多的情况下可以使用spring batch,如果只是一个导入功能的话可以考虑使用jdbc的preparedStatement处理. 1.使用逻辑,首先根据导入的文件,将数据转换成我们的对象放进list集合中. 2.创建preparedStatement对象,处理数据. 下面是具体的示例: 1.创建表: CREATE TABLE TEST ( ID ) NOT NULL, NAME ) NOT NULL, HOME ) NOT N…