2016-09-09 2 views
2

간단한 jdbc를 사용하여 Snowflake 데이터베이스에 행을 삽입하고 있습니다. 루프에서 "executeUpdate"를하고 있습니다. 행이 삽입 된 것을 확인했지만이 오류가보고되었습니다.JDBC를 사용하여 Snowflake에 데이터 삽입

[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: TIME_OUTPUT_FORMAT 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: CLIENT_DISABLE_INCIDENTS 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: JS_DRIVER_DISABLE_OCSP_FOR_NON_SF_ENDPOINTS 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: JS_DRIVER_ENABLE_COMPRESSION 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: ODBC_ENABLE_COMPRESSION 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: CLIENT_SESSION_KEEP_ALIVE 
[error] Sep 09, 2016 9:41:28 AM com.snowflake.client.jdbc.SnowflakeResultSet processMetadata 
[error] INFO: unknown parameter: JDBC_USE_JSON_PARSER 

이 오류는 무엇이며 ... 무시할 수 있는지 여부는 확실하지 않습니다.

또한 snowflake JDBC 드라이버는 executeBatch 및 executeLargeBatch를 지원하지 않습니다. 그렇다면 Java 애플리케이션에서 많은 수의 행을 어떻게 업로드합니까?

또한 JDBC 드라이버가 트랜잭션을 지원합니까?

답변

2
  1. 에 대해서는 "[오류] 2016년 9월 9일 오전 9시 41분 28초 com.snowflake.client.jdbc.SnowflakeResultSet processMetadata [오류] INFO : 알 수없는 매개 변수 : TIME_OUTPUT_FORMAT"이러한 정보 로그입니다. 운전자가 이러한 매개 변수를 처리하지 못한다는 의미입니다. 당신은 그들을 무시할 수 있습니다. 이 행이 기본적으로 기록되지 않는 동작이 변경됩니다.

  2. PreparedStatement에 대한 executeBatch를 지원합니다. 따라서 배치 바인딩을 통해 대량의 행을 삽입 할 수 있습니다. executeLargeBatch는 현재 지원되지 않지만 필요할 경우 쉽게 지원을 추가 할 수 있습니다.

  3. JDBC 드라이버는 트랜잭션을 지원합니다. 기본적으로 세션은 자동 커밋 모드에서 시작됩니다. 자동 커밋을 해제하려면 Connection.setAutoCommit 메서드를 호출 한 다음 commit() 또는 rollback()을 사용하여 트랜잭션을 커밋하거나 롤백 할 수 있습니다. 트랜잭션은 첫 번째 DML에서 투명하게 시작됩니다.

관련 문제