ibpp kütüphanesini kullanarak kendi Firebird veritabanı tarayıcımı yazıyorum. Tablo tanımını bir SQL deyimi kullanarak alabilmem için bir yol var mı?Tablo Tanımını Bulmak için Firebird SQL Bildirimi
cevap
Firebird şemaları desteklemiyor, bu nedenle bu bilgileri edinmenin bir yolu yok.
yakın şey bir veritabanı içinde bir ad alanıdır RDB$RELATIONS
Düzenleme
Bir "şema" sorgulayarak alabilirsiniz sahibi, olabilir. Görünüşe göre şema değil, tablo tanımını arıyorsun.
Sen RDB $ FIELDS ve RDB $ RELATION_FIELDS sorgulayarak bir tablonun colums ve bunların veri türlerini alabilirsiniz:
select rf.rdb$relation_name as table_name,
rf.rdb$field_name as column_name,
case f.rdb$field_type
when 14 then 'CHAR'
when 37 then 'VARCHAR'
when 8 then 'INTEGER'
...
end as data_type,
f.rdb$field_length,
f.rdb$field_scale
from rdb$fields f
join rdb$relation_fields rf on rf.rdb$field_source = f.rdb$field_name
where rf.rdb$relation_name = 'FOOBAR'
veri türü sütununda RDB $ ALAN bir tamsayı olarak saklanır. Bu sütundaki değerlerin tam listesi Interbase Referans Kılavuzu'nda (http://www.ibphoenix.com/files/60LangRef.zip) (bu sistem tablosunda ve diğer tüm sistem tablolarındaki diğer tüm sütunlarda olduğu gibi) belgelenmiştir. IB 6.0'dan beri sistem tablolarında herhangi bir değişiklik olup olmadığını kontrol etmek için tüm güncelleme kılavuzlarını gözden geçirmeniz gerekebilir (Firebird manualy bir ** reall * karışıklık)
- 1. Hazırlık Bildirimi, sql
- 2. Firebird tablo adı uzunluğunu uzatmak mümkün mü?
- 3. Sonraki tablo satırını bulmak için JQuery'yi kullanma
- 4. SQL Server: özyinelemeli güncelleme bildirimi
- 5. SQL Server: tabloyu değiştirmek, SPARSE tanımını ekleme
- 6. SQL optimizasyonu Durum bildirimi
- 7. Firebird ve SQL Server'ın silme en yüksek satır
- 8. Belirli bir tabloya Yabancı anahtarlar bulmak için SQL Script?
- 9. Firebird veritabanı
- 10. Kümelenmiş dizinleri bulmak için SQL Server sorgusu
- 11. Maliyet beyanı bulmak için SQL cümlesi
- 12. sql ile bulmak sql sorgu parametreleri
- 13. dize içinde son sözcüğü bulmak için SQL deyimi
- 14. ms-sql en yakın yeri bulmak
- 15. Büyük projelerde firebird kullanımı
- 16. Basit Firebird sorgusu çok yavaş
- 17. SQL grup tablo değerleri
- 18. SQL JOIN iki tablo
- 19. Firebird SP nasıl yapılır, SELECT * TOM "TABLE"?
- 20. SQL ekleme tablo I iki tablo var
- 21. sql hatası [tablo adı
- 22. Temel tablo analizi SQL
- 23. SQL Server'da tablo güncelleştirme
- 24. Recordset.Edit veya güncelleştirmek için sql vba bildirimi en hızlı yolu?
- 25. sql sunucusunda veritabanı darboğazlarını bulmak için bir araç
- 26. Sadece eşleşen kayıtları olmayan bir tablodaki verileri bulmak için SQL
- 27. Adres veritabanında geçersiz posta kodu bulmak için SQL
- 28. SQL Query, müşteri tarafından yerleştirilen siparişlerin toplam sayısını bulmak için
- 29. SQL Server Tablo Sütunlarının Fiziksel Boyutunu Belirleme
- 30. Dinamik SQL SQL alanından tablo adı