Hallo allerseits Ich lerne DB2 und möchte wissen, wie sehen Sie die Eigenschaften einer Tabelle, nachdem ich eine erstellen.In DB2 Display die Definition einer Tabelle
Ähnlich wie der Befehl EXPLAIN TABLE in MySQL.
Vielen Dank.
Hallo allerseits Ich lerne DB2 und möchte wissen, wie sehen Sie die Eigenschaften einer Tabelle, nachdem ich eine erstellen.In DB2 Display die Definition einer Tabelle
Ähnlich wie der Befehl EXPLAIN TABLE in MySQL.
Vielen Dank.
Alle diese Metadaten befinden sich in den DB2-Katalogtabellen im Schema SYSIBM
. Sie variiert für das DB2/z-Mainframe-Produkt und das verteilte DB2/LUW-Produkt, sie kommen jedoch mit jedem Release immer näher.
IBM platziert bequem alle Handbücher auf der publib
Website für den Zugriff der Welt. Mein Fachgebiet, DB2/z, enthält die von Ihnen gewünschten Seiten here.
Es gibt eine Reihe von Tabellen gibt, die Sie verweisen müssen:
SYSTABLES for table information.
SYSINDEXES \
SYSINDEXPART + for index information.
SYSKEYS /
SYSCOLUMNS for column information.
Die Liste aller Informationszentren ist here, die Sie auf die DB2/LUW Version zeigen sollte, wenn das ist Ihr Interessengebiet .
Syntax für
db2 describe table <tablename>
oder Für alle Tabellendetails
select * from syscat.tables
oder Für alle Tabellendetails Beschreiben Tabelle
select * from sysibm.tables
Zusätzlich Tabelle zu beschreiben, können Sie die folgenden
DESCRIBE INDEXES FOR TABLE *tablename* SHOW DETAIL
, um Informationen über die Indizes der Tabelle zu erhalten.
Die umfassendsten Informationen zu einer Tabelle unter DB2 für Linux, UNIX und Windows erhalten Sie über das Dienstprogramm db2look, das Sie als lokaler Benutzer von einem Remote-Client oder direkt auf dem DB2-Server ausführen können. Das Tool erzeugt die DDL und andere Informationen, die notwendig sind, um Tabellen und ihre statistischen Daten nachzuahmen. Die Dokumentation für db2look in DB2 9.5 lautet here.
Der folgende db2look
Befehl an die Datenbank salesdb verbinden und erhält die DDL-Befehle notwendig, die Tabelle ORDERS
db2look -d SALESDB -e -t ORDERS
Beschreiben Tabelle Syntax Ich weiß, das ist eine alte Frage
describe table schemeaName.TableName
Hallo Rajesh .. wissen Sie keine Abfrage, die die - ddl-Anweisung für die Tabelle/Index allein geben? TIA –
neu zu erstellen, aber das wird den Job machen.
SELECT colname, typename, length, scale, default, nulls
FROM syscat.columns
WHERE tabname = '<table name>'
AND tabschema = '<schema name>'
ORDER BY colno
Hallo Todd .. Wissen Sie irgendeine Abfrage, die die Anweisung --ddl für die Tabelle/Index allein geben wird? TIA –
Für welche Versionen von DB2 gilt dies? Ich arbeite mit 7.2 und es scheint nicht zu funktionieren. –
Offenbar für ältere Versionen müssen Sie Sysibm statt Syscat verwenden. –
Klicken Sie mit der rechten Maustaste auf die Tabelle in der DB2-Steuerzentrale, und wählen Sie DDL generieren aus. Damit erhalten Sie alles, was Sie benötigen, und mehr.
Versuchen Sie Folgendes:
DESCRIBE SELECT * FROM TABLE_name
Sie den folgenden Befehl verwenden, können die kompletten Eigenschaften des DB
db2look -d <DB NAme>-u walid -e -o
zu sehen, können Sie den folgenden Befehl verwenden, um die vollständigen Eigenschaften von Schema zu sehen
db2look -d <DB NAme> -u walid -z <Schema Name> -e -o
Sie können den folgenden Befehl verwenden, um die vollständigen Eigenschaften von ta zu sehen ble
db2look -d <DB NAme> -u walid -z <Schema Name> -t <Table Name>-e -o
können Sie auch den untenstehenden Link für weitere Details besuchen. https://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=%2Fcom.ibm.db2.udb.admin.doc%2Fdoc%2Fr0002051.htm
Verwenden Sie den folgenden Befehl, um die Indizes der Tabelle zu überprüfen: Indizes für Tabelle schemeaName.TableName –
Um die Details der Indizes für die Tabelle zu überprüfen, verwenden Sie den folgenden Befehl, Indizes für Tabelle schemeaName.TableName show detail –
db2look -d <db_name>--z <schema_name> -t <table_name> -i <user_name> -w <Passwort>> <datei_name> .SQL
Für weitere Informationen, lesen Sie bitte unten:
db2look [-h]
-d: Database Name: This must be specified
-e: Extract DDL file needed to duplicate database
-xs: Export XSR objects and generate a script containing DDL statements
-xdir: Path name: the directory in which XSR objects will be placed
-u: Creator ID: If -u and -a are both not specified then $USER will be used
-z: Schema name: If -z and -a are both specified then -z will be ignored
-t: Generate statistics for the specified tables
-tw: Generate DDLs for tables whose names match the pattern criteria (wildcard characters) of the table name
-ap: Generate AUDIT USING Statements
-wlm: Generate WLM specific DDL Statements
-mod: Generate DDL statements for Module
-cor: Generate DDL with CREATE OR REPLACE clause
-wrap: Generates obfuscated versions of DDL statements
-h: More detailed help message
-o: Redirects the output to the given file name
-a: Generate statistics for all creators
-m: Run the db2look utility in mimic mode
-c: Do not generate COMMIT statements for mimic
-r: Do not generate RUNSTATS statements for mimic
-l: Generate Database Layout: Database partition groups, Bufferpools and Tablespaces
-x: Generate Authorization statements DDL excluding the original definer of the object
-xd: Generate Authorization statements DDL including the original definer of the object
-f: Extract configuration parameters and environment variables
-td: Specifies x to be statement delimiter (default is semicolon(;))
-i: User ID to log on to the server where the database resides
-w: Password to log on to the server where the database resides
Es gibt viele Optionen zum Generieren von ddl von bestimmten db2 Tabelle. Bitte wählen Sie die notwendigen Details für Ihre Suche aus. – user4105809
Ich bin gerade auf diese Abfrage zu descr IBE einen Tisch in winsql
select NAME,TBNAME,COLTYPE,LENGTH,REMARKS,SCALE from sysibm.syscolumns
where tbcreator = 'Schema_name' and tbname='Table_name' ;
DB2 Version 11,0
Columns:
--------
SELECT NAME,COLTYPE,NULLS,LENGTH,SCALE,DEFAULT,DEFAULTVALUE FROM SYSIBM.SYSCOLUMNS where TBcreator ='ME' and TBNAME ='MY_TABLE' ORDER BY COLNO;
Indexes:
--------
SELECT P.SPACE, K.IXNAME, I.UNIQUERULE, I.CLUSTERING, K.COLNAME, K.COLNO, K.ORDERING
FROM SYSIBM.SYSINDEXES I
JOIN SYSIBM.SYSINDEXPART P
ON I.NAME = P.IXNAME
AND I.CREATOR = P.IXCREATOR
JOIN SYSIBM.SYSKEYS K
ON P.IXNAME = K.IXNAME
AND P.IXCREATOR = K.IXCREATOR
WHERE I.TBcreator ='ME' and I.TBNAME ='MY_TABLE'
ORDER BY K.IXNAME, K.COLSEQ;
Hallo Pax, können Sie die oben genannte Antwort in Abfrage Rahmen, dann wird es sehr hilfreich für mich sein .. TIA –
Ich kopiere meine Tabellen zu einem anderen Tablespace von Tabellen exportieren und mit create -Option mit verschiedenen Namen importieren. Ich habe festgestellt, Primärindex sind erstellt. Meine sekundären Indizes sind jedoch nicht erstellen, da der gleiche Indexname bereits vorhanden war. Jetzt versuche ich, ddl-Anweisungen für diese Indizes zu bekommen. Ist irgendein Körper geben Sie mir eine db2look Anweisungen zu erhalten Sie nur den Index ddl Anweisungen für diese Datenbank. Vielen Dank im Voraus –