|
<< İçindekileri Görüntülemek İçin Tıklayın >> Yer: Teknik Kılavuzlar > Netsim System Agent İstemci Protokolü Referansı > 9. CRUD işlemcisi (/crud) > 9.3 /crud/metadata — veritabanı kataloğu |
Katalog bilgisi motordan bağımsız tek bir biçimde sunulur; istemcinin Firebird mi PostgreSQL mi sqlite mi konuştuğunu bilmesi gerekmez. Kapı /crud/data ile aynıdır (kimlik + yönetici): katalog şema tasarımını dışarıya verir.
| İstek | Ne döner |
|---|---|
GET /crud/metadata/tables[?schema=] |
Tablolar |
GET /crud/metadata/views[?schema=] |
Görünümler |
GET /crud/metadata/columns/<tablo> |
Kolonlar |
GET /crud/metadata/primarykeys/<tablo> |
Birincil anahtar |
GET /crud/metadata/indexes/<tablo> |
İndeksler |
GET /crud/metadata/procedures[?schema=] |
Yordamlar |
GET /crud/metadata/functions[?schema=] |
İşlevler |
Kolon tanımı, veri yanıtlarındaki metadata bloğuyla aynı sözlüğü kullanır — type, charLen, nullable, precision, scale — ve type motorun kendi yerleşik tip adıdır (INTEGER, VARCHAR, DOUBLE PRECISION, CLOB, JSON …). Buna ek olarak nativeType motorun kendi yazımını taşır (int4, varchar(60)). Mantıksal alanlar gerçek JSON true/ false döner ve değeri olmayan anahtarlar hiç yazılmaz.
Not. Not
schemasüzgecinin anlamı motora göre değişir: PostgreSQL'de gerçek şema adıdır, Firebird'de nesnenin sahibine karşılık gelir, sqlite'ta ise şema kavramı olmadığı için etkisizdir ve yanıttaschemaher zaman boştur. sqlite'ta yordam ve işlev kavramı da yoktur: o iki uç, doğru alanları taşıyan boş bir liste döner — “bilgi yok” ile “böyle bir kavram yok” ayrı şeylerdir.Not. Not
Aynı tablo MCP sunucusunu da besler, ama farkları bilmek gerekir.
-MCPkipi satırlarıHTTP_METHOD IN ('MCP','Local MCP')ile süzer ve süreç başına bir kez yükler — yeni bir satır ya yeniden başlatmadan sonra ya da yerleşikreload_toolsaracı çağrılınca görünür; HTTP tarafında aynı işAdminREST EXECCOMMAND RELOADENDPOINTS'tır. OradaROLE_KODUokunmaz: MCP stdio üzerinden yereldir, kendisini başlatan kişinin yetkileriyle koşar ve yapılandırmanın veritabanı kimliğiyle bağlanır, yani bir aracı gizlemek zaten yapabildiği bir şeyi kısıtlamaz. HTTP tarafında iseROLE_KODUuygulanır.