Article View: pl.comp.lang.java
Article #153601Re: Fierbird info o tabelach
From: J-23
Date: Thu, 27 Sep 2012 15:54
Date: Thu, 27 Sep 2012 15:54
53 lines
2875 bytes
2875 bytes
W dniu 27.09.2012 13:47, J-23 pisze:
> Witam
> Potrzebuje wyciągnąć informacje o tabelach w Firebird i mam takie zapytanie
>
> SELECT a.RDB$RELATION_NAME, b.RDB$FIELD_NAME, b.RDB$FIELD_ID,
> d.RDB$TYPE_NAME,
> c.RDB$FIELD_LENGTH, c.RDB$FIELD_SCALE
> FROM RDB$RELATIONS a
> INNER JOIN RDB$RELATION_FIELDS b
> ON a.RDB$RELATION_NAME = b.RDB$RELATION_NAME
> INNER JOIN RDB$FIELDS c
> ON b.RDB$FIELD_SOURCE = c.RDB$FIELD_NAME
> INNER JOIN RDB$TYPES d
> ON c.RDB$FIELD_TYPE = d.RDB$TYPE
> WHERE a.RDB$SYSTEM_FLAG = 0
> AND d.RDB$FIELD_NAME = 'RDB$FIELD_TYPE'
> ORDER BY a.RDB$RELATION_NAME, b.RDB$FIELD_ID
>
> wyświetla mi wszystko co chce (prawie) tyko chciałbym jeszcze 2 rzeczy
>
> 1) zeby w typie pola była wyświetlana pełna nazwa np:
> Integer to mam Integer a nie jak teraz INT
> Varchar to mam Varchar a nie jak teraz VARYING
>
> Jeżeli się nie da to ok zapis jest wystarczająco jasny by sobie to
> oprogramować odpowiednio.
>
> 2) Jeżeli typ pola został wcześniej zdefiniowany w "Domains" to żeby
> była wyświetlana nazwa tego "Domains" jako typ pola
>
> Szukałem lecz nie znalazłem i stąd prośba do Was
>
Dla potomnych
SELECT a.rdb$relation_name AS tables,
b.rdb$field_name AS field,
IIF(POSITION('RDB$' IN c.rdb$field_name) =
0,c.rdb$field_name,d.rdb$type_name) AS TYPE,
c.rdb$field_length AS LENGTH
FROM rdb$relations a
INNER JOIN rdb$relation_fields b
ON a.rdb$relation_name = b.rdb$relation_name
INNER JOIN rdb$fields c
ON b.rdb$field_source = c.rdb$field_name
INNER JOIN rdb$types d
ON c.rdb$field_type = d.rdb$type
WHERE a.rdb$system_flag = 0
AND d.rdb$field_name = 'RDB$FIELD_TYPE'
AND a.rdb$relation_name = 'NAZWATABELI'
ORDER BY a.rdb$relation_name, b.rdb$field_id
Pozdrawiam
Technical Details
Message-ID:
<k41t5d$16q$1@mx1.internetia.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!wsisiz.edu.pl!plix.pl!newsfeed2.plix.pl!news.nask.pl!news.nask.org.pl!news.internetia.pl!not-for-mailReferences:
<k41elh$tfa$1@mx1.internetia.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!wsisiz.edu.pl!plix.pl!newsfeed2.plix.pl!news.nask.pl!news.nask.org.pl!news.internetia.pl!not-for-mail From: J-23 <baczeklu@poczta.fm> Newsgroups: pl.comp.lang.java,pl.comp.lang.delphi.bazy-danych Subject: Re: Fierbird info o tabelach Date: Thu, 27 Sep 2012 17:54:54 +0200 Organization: Netia S.A. Lines: 54 Message-ID: <k41t5d$16q$1@mx1.internetia.pl> References: <k41elh$tfa$1@mx1.internetia.pl> NNTP-Posting-Host: 87-205-204-65.adsl.inetia.pl Mime-Version: 1.0 X-Trace: mx1.internetia.pl 1348761581 1242 87.205.204.65 (27 Sep 2012 15:59:41 GMT) X-Complaints-To: abuse@inetia.pl NNTP-Posting-Date: Thu, 27 Sep 2012 15:59:41 +0000 (UTC) In-Reply-To: <k41elh$tfa$1@mx1.internetia.pl> X-Tech-Contact: usenet@internetia.pl User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120827 Thunderbird/15.0 X-Server-Info: http://www.internetia.pl/ Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit