Oracle ortamımdan yordamların bir listesini yüklemek için GetSchema kullanıyorum, ancak yalnızca kök yordamlarını, paket yordamlarını görüyorum. Belgelere baktığımda, başka nasıl iade edilebileceğini göremiyorum. Paket provaları almak için bir filtre/kısıtlama olup olmadığını bilen var mı yoksa farklı bir nesne türünü mi çağırmalıyım?Oracle GetSchema() paket yordamlarını iade etmiyor
Dim ObjectType= "Procedures"
Dim Options As String()
Dim ObjectsTable = OracleConnection.GetSchema(ObjectType, Options)
Örnek 'Paketler' Sonuçlar
?RefinedPackageSchemaData(10)
Count = 12
(0): {[OWNER, #REDACTED SCHEMA NAME#]}
(1): {[OBJECT_NAME, #REDACTED PACKAGE NAME#]}
(2): {[SUBOBJECT_NAME, ]}
(3): {[OBJECT_ID, 130652]}
(4): {[DATA_OBJECT_ID, ]}
(5): {[LAST_DDL_TIME, 4/27/2015 3:52:26 PM]}
(6): {[TIMESTAMP, 2015-04-27:15:52:26]}
(7): {[STATUS, VALID]}
(8): {[TEMPORARY, N]}
(9): {[GENERATED, N]}
(10): {[SECONDARY, N]}
(11): {[CREATED, 1/9/2015 9:47:50 AM]}
satır sayısı paketlerinin tam numarasına karşılık gelen
değil, paket + prosedür kombinasyonları
Örnek 'PackageBodies' Sonuç
?RefinedPackageBodySchemaData(10)
Count = 12
(0): {[OWNER, #REDACTED SCHEMA NAME#]}
(1): {[OBJECT_NAME, #REDACTED PACKAGE NAME#]}
(2): {[SUBOBJECT_NAME, ]}
(3): {[OBJECT_ID, 130653]}
(4): {[DATA_OBJECT_ID, ]}
(5): {[LAST_DDL_TIME, 4/27/2015 4:19:44 PM]}
(6): {[TIMESTAMP, 2015-04-27:16:19:44]}
(7): {[STATUS, VALID]}
(8): {[TEMPORARY, N]}
(9): {[GENERATED, N]}
(10): {[SECONDARY, N]}
(11): {[CREATED, 1/9/2015 9:48:02 AM]}
sıra sayısı paketlerinin tam sayıya tekabül
değil, paket + prosedür kombinasyonları
MSDN Oracle GetSchema Reference
Eğer NesneTürü "Paketler" olmak istemem: sözlükler bir Listesine DataTable dan dönmesine ayrı yardımcı fonksiyonla
? Kamu yöntemleri "subobject_name" değerleri olmalıdır. –
@JustinCave önerinizde bunu denedim, ancak sadece ilgili paketleri aldım, paket-prosedür kombinasyonlarının tam listesi değil –