का सटीक परिणाम पुनर्प्राप्त नहीं करता है, मैं अपने आवेदन से ओरेकल तालिका की जानकारी पढ़ने की कोशिश कर रहा हूं। तालिका विवरण प्राप्त करने के लिए, मैं अपने आवेदन पर इस क्वेरी निष्पादित करें:तैयार कथन एसक्यूएल
SELECT DBMS_METADATA.GET_DDL('TABLE', 'CONTRACT_TABLE' ,'SCHEMA_NAME') FROM DUAL
यहाँ कोड ब्लॉक कि निष्पादित करता है क्वेरी:
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
String sql = "SELECT DBMS_METADATA.GET_DDL('TABLE', 'CONTRACT_TABLE' ,'SCHEMA_NAME') FROM DUAL";
preparedStatement = connection.prepareStatement(sql);
resultSet = preparedStatement.executeQuery();
if (resultSet.next()) {
Clob clob = resultSet.getClob(1);
String str = clob.getSubString(1, (int)clob.length());
return str;
} else {
throw new DBPlatformException("Object not available [Schema: "
+ schema + "].[Name: " + objectName + "]!");
}
जब मैं डेटाबेस पर सीधे एसक्यूएल चलाने मैं इस परिणाम मिलता है :
CREATE TABLE "SCHEMA_NAME"."CONTRACT_TABLE"
( "CONTRACT_ID" NUMBER,
"START_DATE" DATE,
"END_DATE" DATE
)
PARTITION BY HASH ("CONTRACT_ID")
(PARTITION "P01" ,
PARTITION "P02" ,
PARTITION "P03" ,
PARTITION "P04" ,
PARTITION "P05")
0:
CREATE TABLE "SCHEMA_NAME"."CONTRACT_TABLE"
( "CONTRACT_ID" NUMBER,
"START_DATE" DATE,
"END_DATE" DATE
) PCTFREE 0 PCTUSED 0 INITRANS 1 MAXTRANS 255
COMPRESS FOR QUERY HIGH NOLOGGING
STORAGE(
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TMP_SPACE"
PARTITION BY HASH ("CONTRACT_ID")
(PARTITION "P01" SEGMENT CREATION DEFERRED
TABLESPACE "TMP_SPACE"
COMPRESS FOR QUERY HIGH ,
PARTITION "P02" SEGMENT CREATION DEFERRED
TABLESPACE "TMP_SPACE"
COMPRESS FOR QUERY HIGH ,
PARTITION "P03" SEGMENT CREATION DEFERRED
TABLESPACE "TMP_SPACE"
COMPRESS FOR QUERY HIGH ,
PARTITION "P04" SEGMENT CREATION DEFERRED
TABLESPACE "TMP_SPACE"
COMPRESS FOR QUERY HIGH ,
PARTITION "P05" SEGMENT CREATION DEFERRED
TABLESPACE "TMP_SPACE"
COMPRESS FOR QUERY HIGH)
PARALLEL 32
जब मैं अपने आवेदन चलाने के लिए, इसे इस तरह परिणाम देता है
परिणामस्वरूप कि मेरे आवेदन रिटर्न में कम जानकारी है। मुझे यह जानने की जरूरत है कि तालिका समानांतर है या नहीं, लेकिन मेरा आवेदन मुझे वह जानकारी नहीं दे सकता है।
मैं यह पता लगाने की कोशिश कर रहा हूं कि क्वेरी के परिणाम अलग क्यों हैं और मैं समांतर जानकारी कैसे प्राप्त कर सकता हूं।
जेडीबीसी डीडीएल सीमाएं, शायद? – fge
मुझे सही करें अगर मैं गलत हूं। मुझे सीधे जेडीबीसी पर डीडीएल जानकारी नहीं मिल रही है। डीडीएल जानकारी प्राप्त करने के लिए, मैं एक क्वेरी निष्पादित करता हूं और परिणाम पढ़ता हूं। मुझे नहीं लगता कि जेडीबीसी डीडीएल सीमाओं के पास इस समस्या से कुछ लेना देना है। – seckinozden