java.sql.PreparedStatement#getMoreResults ( )源码实例Demo

下面列出了java.sql.PreparedStatement#getMoreResults ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: opscenter   文件: ProcedureJdbcTemplate.java
/**
 * 创建结果集列表
 * @param cstmt
 * @param rs
 * @return List<List<Map<String, Object>>>
 * @throws IOException
 */
public List<List<Map<String, Object>>> createRows(PreparedStatement ps, ResultSet rs) throws IOException{
	List<List<Map<String, Object>>> list = new ArrayList<>();
	RowMapperResultSetExtractor<Map<String, Object>> rse = new RowMapperResultSetExtractor<>(new ColumnMapRowMapper());
	boolean label = true;
	int health = 0;
	while(label){
		try {
			rs=ps.getResultSet();
			if(rs !=null){
				list.add(rse.extractData(rs));
		    	label = ps.getMoreResults();
		    	health++;
		    	if(health > MAX_LOOP) break;
				continue;
		    }
		    label = false;
		} catch (SQLException e) {
			label = false;
		}
	}
	return list;
}
 
源代码2 项目: lams   文件: ResultSetReturnImpl.java
@Override
public ResultSet execute(PreparedStatement statement) {
	// sql logged by StatementPreparerImpl
	try {
		final ResultSet rs;
		try {
			jdbcExecuteStatementStart();
			if ( !statement.execute() ) {
				while ( !statement.getMoreResults() && statement.getUpdateCount() != -1 ) {
					// do nothing until we hit the resultset
				}
			}
			rs = statement.getResultSet();
		}
		finally {
			jdbcExecuteStatementEnd();
		}
		postExtract( rs, statement );
		return rs;
	}
	catch (SQLException e) {
		throw sqlExceptionHelper.convert( e, "could not execute statement" );
	}
}
 
源代码3 项目: gemfirexd-oss   文件: Swarm.java
public static DUnitClassInfo getOrCreateDUnitClassInfo(String name)
    throws SQLException {
  PreparedStatement ps = Database
      .prepareStatement("SELECT ID,NAME from dunit_test_class where name=?");
  ps.setString(1, name);
  ResultSet rs = ps.executeQuery();
  if (rs.next()) {
    DUnitClassInfo duci = new DUnitClassInfo(rs.getInt(1), rs.getString(2));
    return duci;
  }
  else {
    PreparedStatement psi = Database
        .prepareStatement("INSERT INTO dunit_test_class(name) values(?);SELECT currval('dunit_test_class_id_seq');");
    psi.setString(1, name);
    psi.execute();
    psi.getMoreResults();
    ResultSet rsi = psi.getResultSet();
    rsi.next();
    System.out.println("XXXXX:" + rsi.getInt(1));
    return new DUnitClassInfo(rsi.getInt(1), name);
  }
}
 
源代码4 项目: gemfirexd-oss   文件: Swarm.java
public static DUnitClassInfo getOrCreateDUnitClassInfo(String name)
    throws SQLException {
  PreparedStatement ps = Database
      .prepareStatement("SELECT ID,NAME from dunit_test_class where name=?");
  ps.setString(1, name);
  ResultSet rs = ps.executeQuery();
  if (rs.next()) {
    DUnitClassInfo duci = new DUnitClassInfo(rs.getInt(1), rs.getString(2));
    return duci;
  }
  else {
    PreparedStatement psi = Database
        .prepareStatement("INSERT INTO dunit_test_class(name) values(?);SELECT currval('dunit_test_class_id_seq');");
    psi.setString(1, name);
    psi.execute();
    psi.getMoreResults();
    ResultSet rsi = psi.getResultSet();
    rsi.next();
    System.out.println("XXXXX:" + rsi.getInt(1));
    return new DUnitClassInfo(rsi.getInt(1), name);
  }
}
 
源代码5 项目: gemfirexd-oss   文件: Swarm.java
public static DUnitMethodInfo getOrCreateDUnitMethodInfo(String name,
    int class_id) throws SQLException {
  PreparedStatement ps = Database
      .prepareStatement("SELECT id from dunit_test_method where name=? and test_class_id=?");
  ps.setString(1, name);
  ps.setInt(2, class_id);
  ResultSet rs = ps.executeQuery();
  if (rs.next()) {
    DUnitMethodInfo duci = new DUnitMethodInfo(rs.getInt(1), name, class_id);
    return duci;
  }
  else {
    PreparedStatement psi = Database
        .prepareStatement("INSERT INTO dunit_test_method(name,test_class_id) values(?,?);SELECT currval('dunit_test_method_id_seq');");
    psi.setString(1, name);
    psi.setInt(2, class_id);
    psi.execute();
    psi.getMoreResults();
    ResultSet rsi = psi.getResultSet();
    rsi.next();
    System.out.println("2XXXXX:" + rsi.getInt(1));
    return new DUnitMethodInfo(rsi.getInt(1), name, class_id);
  }
}
 
源代码6 项目: weMessage   文件: DatabaseManager.java
public List<JSONAction> getQueuedActions(String deviceId) throws IOException, SQLException {
    List<JSONAction> actionQueue = new ArrayList<>();
    String selectAwaitingDevicesStatementString = "SELECT * FROM " + TABLE_ACTION_QUEUE + " WHERE " + COLUMN_QUEUE_ACTION_DEVICES_WAITING + " LIKE ?";
    PreparedStatement selectAwaitingDevicesStatement = getServerDatabaseConnection().prepareStatement(selectAwaitingDevicesStatementString);
    selectAwaitingDevicesStatement.setString(1, "%" + deviceId + "%");

    boolean isResultSet = selectAwaitingDevicesStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectAwaitingDevicesStatement.getResultSet();
            while(resultSet.next()) {
                if (resultSet.getString(COLUMN_QUEUE_ACTION_ACCOUNT).equalsIgnoreCase(messageServer.getConfiguration().getAccountEmail())) {
                    String actionJSON = resultSet.getString(COLUMN_QUEUE_ACTION_JSON);
                    JSONAction jsonAction = new GsonBuilder().registerTypeHierarchyAdapter(byte[].class, byteArrayAdapter).create().fromJson(actionJSON, JSONAction.class);
                    actionQueue.add(jsonAction);
                }
            }
            resultSet.close();
        } else {
            if(selectAwaitingDevicesStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectAwaitingDevicesStatement.getMoreResults();
    }
    selectAwaitingDevicesStatement.close();

    return actionQueue;
}
 
源代码7 项目: weMessage   文件: MessagesDatabase.java
public long getChatRowPositionByRowId(long rowId) throws SQLException {
    Long rowIdReturn = null;

    String selectChatStatementString = "SELECT " + COLUMN_CHAT_MESSAGE_CHAT_ID + ", MAX(" + COLUMN_CHAT_MESSAGE_MESSAGE_ID + ") FROM " + CHAT_MESSAGE_JOIN_TABLE
            + " INNER JOIN " + MESSAGE_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_ROWID
            + " WHERE " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_TEXT + " IS NOT NULL "
            + " GROUP BY " + COLUMN_CHAT_MESSAGE_CHAT_ID
            + " ORDER BY " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " DESC";

    PreparedStatement selectChatStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatStatementString);

    boolean isResultSet = selectChatStatement.execute();
    long i = 0L;

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_CHAT_MESSAGE_CHAT_ID);

                if (rowId == resultInt){
                    rowIdReturn = i;
                    break;
                }
                i++;
            }
            resultSet.close();
        } else {
            if(selectChatStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatStatement.getMoreResults();
    }
    selectChatStatement.close();

    return rowIdReturn;
}
 
源代码8 项目: weMessage   文件: MessagesDatabase.java
public long getChatRowPositionByGuid(String guid) throws SQLException {
    Long rowIdReturn = null;

    String selectChatStatementString = "SELECT " + CHAT_TABLE + "." + COLUMN_CHAT_GUID + ", " + COLUMN_CHAT_MESSAGE_CHAT_ID + ", MAX(" + COLUMN_CHAT_MESSAGE_MESSAGE_ID + ")"
            + " FROM " + CHAT_MESSAGE_JOIN_TABLE
            + " INNER JOIN " + CHAT_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_CHAT_ID + " = " + CHAT_TABLE + "." + COLUMN_CHAT_ROWID
            + " INNER JOIN " + MESSAGE_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_ROWID
            + " WHERE " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_TEXT + " IS NOT NULL "
            + " GROUP BY " + COLUMN_CHAT_MESSAGE_CHAT_ID
            + " ORDER BY " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " DESC";

    PreparedStatement selectChatStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatStatementString);

    boolean isResultSet = selectChatStatement.execute();
    long i = 0L;

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatStatement.getResultSet();
            while(resultSet.next()) {
                String resultString = resultSet.getString(COLUMN_CHAT_GUID);

                if (resultString.equals(guid)){
                    rowIdReturn = i;
                    break;
                }
                i++;
            }
            resultSet.close();
        } else {
            if(selectChatStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatStatement.getMoreResults();
    }
    selectChatStatement.close();

    return rowIdReturn;
}
 
源代码9 项目: weMessage   文件: MessagesDatabase.java
public HashMap<Long, Long> getSortedChatsWithRow() throws SQLException {
    HashMap<Long, Long> positionRowIdPair = new HashMap<>();

    String selectChatStatementString = "SELECT " + COLUMN_CHAT_MESSAGE_CHAT_ID + ", MAX(" + COLUMN_CHAT_MESSAGE_MESSAGE_ID + ") FROM " + CHAT_MESSAGE_JOIN_TABLE
            + " INNER JOIN " + MESSAGE_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_ROWID
            + " WHERE " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_TEXT + " IS NOT NULL "
            + " GROUP BY " + COLUMN_CHAT_MESSAGE_CHAT_ID
            + " ORDER BY " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " DESC";

    PreparedStatement selectChatStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatStatementString);

    boolean isResultSet = selectChatStatement.execute();
    long i = 0L;

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_CHAT_MESSAGE_CHAT_ID);
                positionRowIdPair.put(i, resultInt);
                i++;
            }
            resultSet.close();
        } else {
            if(selectChatStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatStatement.getMoreResults();
    }
    selectChatStatement.close();

    return positionRowIdPair;
}
 
源代码10 项目: weMessage   文件: MessagesDatabase.java
public HashMap<Long, String> getSortedChatsWithGuid() throws SQLException {
    HashMap<Long, String> chatRowGuidPair = new HashMap<>();

    String selectChatStatementString = "SELECT " + CHAT_TABLE + "." + COLUMN_CHAT_GUID + ", " + COLUMN_CHAT_MESSAGE_CHAT_ID + ", MAX(" + COLUMN_CHAT_MESSAGE_MESSAGE_ID + ")"
            + " FROM " + CHAT_MESSAGE_JOIN_TABLE
            + " INNER JOIN " + CHAT_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_CHAT_ID + " = " + CHAT_TABLE + "." + COLUMN_CHAT_ROWID
            + " INNER JOIN " + MESSAGE_TABLE + " ON " + CHAT_MESSAGE_JOIN_TABLE + "." + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_ROWID
            + " WHERE " + MESSAGE_TABLE + "." + COLUMN_MESSAGE_TEXT + " IS NOT NULL "
            + " GROUP BY " + COLUMN_CHAT_MESSAGE_CHAT_ID
            + " ORDER BY " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " DESC";

    PreparedStatement selectChatStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatStatementString);

    boolean isResultSet = selectChatStatement.execute();
    long i = 0L;

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatStatement.getResultSet();
            while(resultSet.next()) {
                String resultString = resultSet.getString(COLUMN_CHAT_GUID);
                chatRowGuidPair.put(i, resultString);
                i++;
            }
            resultSet.close();
        } else {
            if(selectChatStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatStatement.getMoreResults();
    }
    selectChatStatement.close();

    return chatRowGuidPair;
}
 
源代码11 项目: weMessage   文件: MessagesDatabase.java
public List<Message> getMessagesByAmount(long amount) throws SQLException {
    List<Message> messages = new ArrayList<>();

    String selectMessagesStatementString = "SELECT * FROM (SELECT * FROM " + MESSAGE_TABLE + " ORDER BY " + COLUMN_MESSAGE_ROWID + " DESC LIMIT ?) ORDER BY " + COLUMN_MESSAGE_ROWID + " ASC";
    PreparedStatement selectMessagesStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectMessagesStatementString);
    selectMessagesStatement.setLong(1, amount);

    boolean isResultSet = selectMessagesStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectMessagesStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_MESSAGE_ROWID);
                Message message = getMessageByRow(resultInt);

                if (message != null) {
                    messages.add(message);
                }
            }
            resultSet.close();
        } else {
            if(selectMessagesStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectMessagesStatement.getMoreResults();
    }
    selectMessagesStatement.close();

    return messages;
}
 
源代码12 项目: cacheonix-core   文件: IdentityGenerator.java
public Serializable executeAndExtract(PreparedStatement insert) throws SQLException {
	if ( !insert.execute() ) {
		while ( !insert.getMoreResults() && insert.getUpdateCount() != -1 ) {
			// do nothing until we hit the rsult set containing the generated id
		}
	}
	ResultSet rs = insert.getResultSet();
	try {
		return IdentifierGeneratorFactory.getGeneratedIdentity( rs, persister.getIdentifierType() );
	}
	finally {
		rs.close();
	}
}
 
源代码13 项目: weMessage   文件: MessagesDatabase.java
public List<Handle> getHandlesByAmount(long amount) throws SQLException {
    List<Handle> handles = new ArrayList<>();

    String selectHandlesStatementString = "SELECT * FROM (SELECT * FROM " + HANDLE_TABLE + " ORDER BY " + COLUMN_HANDLE_ROWID + " DESC LIMIT ?) ORDER BY " + COLUMN_HANDLE_ROWID + " ASC";
    PreparedStatement selectHandlesStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectHandlesStatementString);
    selectHandlesStatement.setLong(1, amount);

    boolean isResultSet = selectHandlesStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectHandlesStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_HANDLE_ROWID);
                Handle handle = getHandleByRow(resultInt);

                if(handle != null) {
                    handles.add(handle);
                }
            }
            resultSet.close();
        } else {
            if(selectHandlesStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectHandlesStatement.getMoreResults();
    }
    selectHandlesStatement.close();

    return handles;
}
 
源代码14 项目: weMessage   文件: MessagesDatabase.java
public List<ChatBase> getChatsByStartRow(long startRowID) throws SQLException {
    List<ChatBase> chats = new ArrayList<>();

    String selectChatsStatementString = "SELECT * FROM " + CHAT_TABLE + " WHERE " + COLUMN_CHAT_ROWID + " >= ?";
    PreparedStatement selectChatsStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatsStatementString);
    selectChatsStatement.setLong(1, startRowID);

    boolean isResultSet = selectChatsStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatsStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_CHAT_ROWID);
                ChatBase chat = getChatByRow(resultInt);

                if (chat != null) {
                    chats.add(chat);
                }
            }
            resultSet.close();
        } else {
            if(selectChatsStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatsStatement.getMoreResults();
    }
    selectChatsStatement.close();

    return chats;
}
 
源代码15 项目: quarks   文件: JdbcStatement.java
private void executeStatement(T tuple, List<R> results) {
    nTuples++;
    try {
        logger.debug("executing statement nTuples={} nTuplesFailed={}", nTuples, nTuplesFailed);
        Connection cn = connector.getConnection(this);
        PreparedStatement stmt = getPreparedStatement(cn);
        paramSetter.setParameters(tuple, stmt);
        boolean hasResult = stmt.execute();
        if (resultsHandler != null) {
            if (!hasResult) {
                resultsHandler.handleResults(tuple, null/*rs*/, null/*exc*/,
                        (result) -> results.add(result));
            }
            else {
                do {
                    try (ResultSet rs = stmt.getResultSet()) {
                        resultsHandler.handleResults(tuple, rs, null/*exc*/,
                                (result) -> results.add(result));
                    }
                } while (stmt.getMoreResults());
            }
        }
    }
    catch (Exception e) {
        nTuplesFailed++;
        logger.trace("executing statement failed nTuples={} nTuplesFailed={}", nTuples, nTuplesFailed);
        if (resultsHandler != null) {
            try {
                resultsHandler.handleResults(tuple, null/*rs*/, e, 
                        (result) -> results.add(result));
            }
            catch (Exception e2) {
                logger.error("failure result handler failed", e2);
            }
        }
        closeStmt();
        connector.statementFailed(this, e);
    }
}
 
源代码16 项目: skywalking   文件: SwPreparedStatementTest.java
@Test
public void testPreparedStatementConfig() throws SQLException {
    PreparedStatement preparedStatement = swConnection.prepareStatement("INSERT INTO test VALUES( ? , ?)", 1);
    preparedStatement.setInt(1, 1);
    preparedStatement.setString(2, "a");
    preparedStatement.getUpdateCount();
    preparedStatement.setFetchDirection(1);
    preparedStatement.getFetchDirection();
    preparedStatement.getResultSetConcurrency();
    preparedStatement.getResultSetType();
    preparedStatement.isClosed();
    preparedStatement.setPoolable(false);
    preparedStatement.isPoolable();
    preparedStatement.getWarnings();
    preparedStatement.clearWarnings();
    preparedStatement.setCursorName("test");
    preparedStatement.setMaxFieldSize(11);
    preparedStatement.getMaxFieldSize();
    preparedStatement.setMaxRows(10);
    preparedStatement.getMaxRows();
    preparedStatement.getParameterMetaData();
    preparedStatement.setEscapeProcessing(true);
    preparedStatement.setFetchSize(1);
    preparedStatement.getFetchSize();
    preparedStatement.setQueryTimeout(1);
    preparedStatement.getQueryTimeout();
    Connection connection = preparedStatement.getConnection();

    preparedStatement.execute();

    preparedStatement.getMoreResults();
    preparedStatement.getMoreResults(1);
    preparedStatement.getResultSetHoldability();
    preparedStatement.getMetaData();
    preparedStatement.getResultSet();

    preparedStatement.close();
    verify(mysqlPreparedStatement).getUpdateCount();
    verify(mysqlPreparedStatement).getMoreResults();
    verify(mysqlPreparedStatement).setFetchDirection(anyInt());
    verify(mysqlPreparedStatement).getFetchDirection();
    verify(mysqlPreparedStatement).getResultSetType();
    verify(mysqlPreparedStatement).isClosed();
    verify(mysqlPreparedStatement).setPoolable(anyBoolean());
    verify(mysqlPreparedStatement).getWarnings();
    verify(mysqlPreparedStatement).clearWarnings();
    verify(mysqlPreparedStatement).setCursorName(anyString());
    verify(mysqlPreparedStatement).setMaxFieldSize(anyInt());
    verify(mysqlPreparedStatement).getMaxFieldSize();
    verify(mysqlPreparedStatement).setMaxRows(anyInt());
    verify(mysqlPreparedStatement).getMaxRows();
    verify(mysqlPreparedStatement).setEscapeProcessing(anyBoolean());
    verify(mysqlPreparedStatement).getResultSetConcurrency();
    verify(mysqlPreparedStatement).getResultSetConcurrency();
    verify(mysqlPreparedStatement).getResultSetType();
    verify(mysqlPreparedStatement).getMetaData();
    verify(mysqlPreparedStatement).getParameterMetaData();
    verify(mysqlPreparedStatement).getMoreResults(anyInt());
    verify(mysqlPreparedStatement).setFetchSize(anyInt());
    verify(mysqlPreparedStatement).getFetchSize();
    verify(mysqlPreparedStatement).getQueryTimeout();
    verify(mysqlPreparedStatement).setQueryTimeout(anyInt());
    verify(mysqlPreparedStatement).getResultSet();
    assertThat(connection, CoreMatchers.<Connection>is(swConnection));
}
 
源代码17 项目: gemfirexd-oss   文件: Swarm.java
public static DUnitRun generateNewDUnitRun() throws SQLException, IOException {

    Properties gfvp = new Properties();
    gfvp
        .load(GemFireCacheImpl.class
            .getResourceAsStream("/com/gemstone/gemfire/internal/GemFireVersion.properties"));

    PreparedStatement ps = Database
        .prepareStatement("INSERT INTO dunit_run(user_name,path,sites,revision,branch,os_name,os_version,java_version,java_vm_version,java_vm_vendor) values(?,?,?,?,?,?,?,?,?,?);SELECT currval('dunit_run_id_seq');");
    String user_name = System.getProperty("user.name");
    String path = System.getProperty("user.dir");
    int sites = Integer.parseInt((String)TestConfig.getInstance()
        .getSystemProperties().get("dunitSites"));
    String revision = gfvp.getProperty("Source-Revision");
    String branch = gfvp.getProperty("Source-Repository");
    String os_name = System.getProperty("os.name");
    String os_version = System.getProperty("os.version");
    String java_version = System.getProperty("java.version");
    String java_vm_version = System.getProperty("java.vm.version");
    String java_vm_vendor = System.getProperty("java.vm.vendor");

    ps.setString(1, user_name);
    ps.setString(2, path);
    ps.setInt(3, sites);
    ps.setString(4, revision);
    ps.setString(5, branch);
    ps.setString(6, os_name);
    ps.setString(7, os_version);
    ps.setString(8, java_version);
    ps.setString(9, java_vm_version);
    ps.setString(10, java_vm_vendor);

    ps.execute();
    ps.getMoreResults();
    ResultSet rsi = ps.getResultSet();
    rsi.next();
    DUnitRun du = new DUnitRun(rsi.getInt(1), user_name, path, sites, revision,
        branch, os_name, os_version, java_version, java_vm_version,
        java_vm_vendor, new Date());
    return du;
  }
 
源代码18 项目: weMessage   文件: MessagesDatabase.java
public ChatBase getChatByIdentifier(String chatIdentifier) throws SQLException {
    String selectChatStatementString = "SELECT * FROM " + CHAT_TABLE + " WHERE " + COLUMN_CHAT_IDENTIFIER + " = ?";
    PreparedStatement selectChatStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatStatementString);
    selectChatStatement.setString(1, chatIdentifier);

    ResultSet chatResultSet = selectChatStatement.executeQuery();

    if (!chatResultSet.isBeforeFirst()){
        chatResultSet.close();
        selectChatStatement.close();
        return null;
    }

    List<Handle> handles = new ArrayList<>();
    String selectChatHandleStatementString = "SELECT * FROM " + CHAT_HANDLES_TABLE + " WHERE " + COLUMN_CHAT_HANDLE_CHAT_ID + " = ?";
    PreparedStatement selectChatHandleStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatHandleStatementString);
    selectChatHandleStatement.setLong(1, chatResultSet.getLong(COLUMN_CHAT_ROWID));

    boolean isResultSet = selectChatHandleStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet resultSet = selectChatHandleStatement.getResultSet();
            while(resultSet.next()) {
                long resultInt = resultSet.getLong(COLUMN_CHAT_HANDLE_HANDLE_ID);
                handles.add(getHandleByRow(resultInt));
            }
            resultSet.close();
        } else {
            if(selectChatHandleStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectChatHandleStatement.getMoreResults();
    }

    ChatBase chat = buildChat(chatResultSet, handles);

    chatResultSet.close();
    selectChatStatement.close();
    selectChatHandleStatement.close();

    return chat;
}
 
源代码19 项目: weMessage   文件: MessagesDatabase.java
public Message getMessageByRow(long rowID) throws SQLException {
    String selectStatementString = "SELECT * FROM " + MESSAGE_TABLE + " WHERE " + COLUMN_MESSAGE_ROWID + " = ?";
    PreparedStatement selectStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectStatementString);
    selectStatement.setLong(1, rowID);

    ResultSet resultSet = selectStatement.executeQuery();

    if (!resultSet.isBeforeFirst()){
        resultSet.close();
        selectStatement.close();
        return null;
    }
    Handle handle = getHandleByRow(resultSet.getLong(COLUMN_MESSAGE_HANDLE_ID));
    long messageRow = resultSet.getLong(COLUMN_MESSAGE_ROWID);

    String selectChatMessageStatementString = "SELECT * FROM " + CHAT_MESSAGE_JOIN_TABLE + " WHERE " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = ?";
    PreparedStatement selectChatMessageStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatMessageStatementString);
    selectChatMessageStatement.setLong(1, messageRow);

    ResultSet resultChatMessageSet = selectChatMessageStatement.executeQuery();

    ChatBase chat;
    try {
        long theResultInt = resultChatMessageSet.getLong(COLUMN_CHAT_MESSAGE_CHAT_ID);
        chat = getChatByRow(theResultInt);
    }catch(Exception ex){
        return null;
    }

    List<Attachment> attachments = new ArrayList<>();
    String selectMessageAttachmentString = "SELECT * FROM " + MESSAGE_ATTACHMENT_TABLE + " WHERE " + COLUMN_MESSAGE_ATTACHMENT_MESSAGE_ID + " = ?";
    PreparedStatement selectMessageAttachmentStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectMessageAttachmentString);
    selectMessageAttachmentStatement.setLong(1, messageRow);

    boolean isResultSet = selectMessageAttachmentStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet theResultSet = selectMessageAttachmentStatement.getResultSet();
            while(theResultSet.next()) {
                long resultInt = theResultSet.getLong(COLUMN_MESSAGE_ATTACHMENT_ATTACHMENT_ID);
                attachments.add(getAttachmentByRow(resultInt));
            }
            theResultSet.close();
        } else {
            if(selectMessageAttachmentStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectMessageAttachmentStatement.getMoreResults();
    }

    Message message = buildMessage(resultSet, chat, handle, attachments);

    resultSet.close();
    resultChatMessageSet.close();
    selectStatement.close();
    selectChatMessageStatement.close();
    selectMessageAttachmentStatement.close();

    return message;
}
 
源代码20 项目: weMessage   文件: MessagesDatabase.java
public Message getMessageByGuid(String guid) throws SQLException {
    String selectStatementString = "SELECT * FROM " + MESSAGE_TABLE + " WHERE " + COLUMN_MESSAGE_GUID + " = ?";
    PreparedStatement selectStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectStatementString);
    selectStatement.setString(1, guid);

    ResultSet resultSet = selectStatement.executeQuery();

    if (!resultSet.isBeforeFirst()){
        resultSet.close();
        selectStatement.close();
        return null;
    }
    Handle handle = getHandleByRow(resultSet.getLong(COLUMN_MESSAGE_HANDLE_ID));
    long messageRow = resultSet.getLong(COLUMN_MESSAGE_ROWID);

    String selectChatMessageStatementString = "SELECT * FROM " + CHAT_MESSAGE_JOIN_TABLE + " WHERE " + COLUMN_CHAT_MESSAGE_MESSAGE_ID + " = ?";
    PreparedStatement selectChatMessageStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectChatMessageStatementString);
    selectChatMessageStatement.setLong(1, messageRow);

    ResultSet resultChatMessageSet = selectChatMessageStatement.executeQuery();

    ChatBase chat;
    try {
        long theResultInt = resultChatMessageSet.getLong(COLUMN_CHAT_MESSAGE_CHAT_ID);
        chat = getChatByRow(theResultInt);
    }catch(Exception ex){
        return null;
    }

    List<Attachment> attachments = new ArrayList<>();
    String selectMessageAttachmentString = "SELECT * FROM " + MESSAGE_ATTACHMENT_TABLE + " WHERE " + COLUMN_MESSAGE_ATTACHMENT_MESSAGE_ID + " = ?";
    PreparedStatement selectMessageAttachmentStatement = getDatabaseManager().getChatDatabaseConnection().prepareStatement(selectMessageAttachmentString);
    selectMessageAttachmentStatement.setLong(1, messageRow);

    boolean isResultSet = selectMessageAttachmentStatement.execute();

    while(true) {
        if(isResultSet) {
            ResultSet theResultSet = selectMessageAttachmentStatement.getResultSet();
            while(theResultSet.next()) {
                long resultInt = theResultSet.getLong(COLUMN_MESSAGE_ATTACHMENT_ATTACHMENT_ID);
                attachments.add(getAttachmentByRow(resultInt));
            }
            theResultSet.close();
        } else {
            if(selectMessageAttachmentStatement.getUpdateCount() == -1) {
                break;
            }
        }
        isResultSet = selectMessageAttachmentStatement.getMoreResults();
    }

    Message message = buildMessage(resultSet, chat, handle, attachments);

    resultSet.close();
    resultChatMessageSet.close();
    selectStatement.close();
    selectChatMessageStatement.close();
    selectMessageAttachmentStatement.close();

    return message;
}