luw - db2 tamaño de base de datos
Cómo ver la estructura de la tabla de DB2 (19)
Cómo ver la estructura de la tabla en la base de datos DB2
Cómo ver la estructura de la tabla en la base de datos db2
Abra la ventana de comando db2
, conéctese a db2 con el siguiente comando.
> db2 connect to DATABASE_NAME USER USERNAME USING PASSWORD
Una vez que se haya conectado correctamente, emita el siguiente comando para ver la estructura de la tabla.
> db2 "describe select * from SCHEMA_NAME.TABLE_NAME"
El comando anterior mostrará la estructura de la tabla db2 en formato tabular.
Nota: probado en DB2 Client 9.7.11
1.use db2 describe la tabla
db2 describe table tabschema.tabname
2.use db2 describe la salida
db2 "describe select * from tabschema.tabname"
Utilidad 3.use db2look
db2look -d dbname -e -t tabname
4. encontrar filas en db2 syscat
db2 "Select * from syscat.columns wher tabname='''' and tabschema =''''"
El Centro de control ya tiene la característica de eso. Está justo debajo de la lista de la mesa.
El OP no menciona si se está discutiendo sobre DB2 / 400, pero descubrí que la única forma de obtener la estructura de la tabla, incluidas las descripciones de los nombres de columna, era usar DSPFFD.
DSPFFD FILE(TBNAME) OUTPUT(*OUTFILE) OUTFILE(SOMELIB/TBDESC)
Esto coloca la descripción de TBNAME en una tabla llamada TBDESC en la biblioteca SOMELIB. A continuación, puede consultar eso con:
select * from SOMELIB/TBDESC
En DB2, ingrese en el símbolo del sistema db2.
db2 => describe table MyTableName
En general, es más fácil usar DESCRIBE.
DESCRIBE TABLE MYSCHEMA.TABLE
o
DESCRIBE INDEXES FOR MYSCHEMA.TABLE SHOW DETAIL
etc.
Ver la documentación: comando DESCRIBE
Estoy ejecutando DB2 / LINUXX8664 10.5.3 y describe select * from schema_name.table_name
funciona para mí.
Sin embargo, describe table schema_name.table_name
falla con este error:
SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a query is an empty table. SQLSTATE=02000
Estoy usando Aquadata Studio 12.0.23, que es varias versiones menos que la más nueva. Entonces tu experiencia puede ser mejor que la mía. Descubrí que la mejor forma de obtener una visión general era usar el generador de ERD. Tomó un par de horas, ya que la normalización no era un concepto utilizado en el diseño de esta base de datos hace casi 30 años. Pude obtener definiciones para todos los objetos en unas pocas horas, con un archivo para cada uno.
La manera más fácil que muchos ya han mencionado es hacer una TABLA DESCRIBE
Sin embargo, también puedes obtener la misma información + adicional de
db2> SELECT * SYSCAT.TABLES
db2> SELECT * FROM SYSCAT.COLUMNS
Usualmente uso SYSCAT.COLUMNS para encontrar las tablas relacionadas en la base de datos donde ya conozco el nombre de la columna :)
Otra buena forma si desea obtener el DDL de una tabla en particular o la base de datos completa es usar el db2look
# db2look -d *dbname* -t *tablename* > tablestructure.out
Esto generará el archivo ".out" para usted que contendrá la secuencia de comandos DDL de la tabla en particular.
# db2look -d *dbname* -e > dbstructure.out
Esto generará DDL de la base de datos completa como un archivo de script único, esto se usa generalmente para replicar la base de datos, "-e" es para indicar que uno desea exportar DDL para recrear exactamente la misma configuración en una nueva base de datos.
Espero que esto pueda ayudar a alguien que busque tales respuestas :)
PARA LA DESCRIPCIÓN DE LA TABLA EN LA VERSIÓN I DE IBM DB2 10.7, PROBÉ ESTO Y TRABAJÓ BIEN
SELECT NAME,COLTYPE,NULLS,LONGLENGTH FROM SYSIBM.SYSCOLUMNS where TBcreator =SCHEMANAME and TBNAME =TABLENAME;
Puede obtener los metadatos de la tabla usando esta consulta
SELECT * FROM SYSIBM.COLUMNS WHERE TABLE_NAME = ''ASTPCLTEXT'';
Sigue estos simples pasos:
- Seleccione la ventana de Navegadores.
- Extraer (expandir) it.
- Seleccione y extraiga (expanda) la lista de la tabla.
- Seleccione la tabla requerida y extráigala (expanda).
- Al hacer doble clic en la opción de código, abre la estructura de la tabla.
También el siguiente comando funciona:
describe SELECT * FROM table_name;
Donde la instrucción select puede ser reemplazada por cualquier otra instrucción select, que es bastante útil para inserciones complejas con select por ejemplo.
Use el siguiente para verificar la descripción de la tabla para una sola tabla
DESCRIBE TABLE Schema Name.Table Name
únase a las tablas a continuación para verificar la descripción de la tabla para varias tablas, únete a la tabla id syscat.tables y syscat.columns
También puede verificar los detalles de los índices en la tabla utilizando el siguiente comando para describir los índices de la tabla. mostrar detalle
ejemplo php para iSeries (as400) db2, sí, ¡funcionó!
$i5 = db2_connect($database, $user, $password, array("i5_lib"=>"qsys2"));
$querydesc = "select * from qsys2.syscolumns where table_schema = ''".$library."'' and table_name = ''".$table_name."'' ";
$result = db2_exec($i5, $querydesc);
también si solo desea enumerar todas las tablas con sus descripciones
$query = "select TABLE_NAME, TABLE_TEXT from systables where table_schema = ''$library'' ";
$result = db2_exec($i5, $query);
para obtener todas las tablas: (Es posible que desee restringir el esquema a su esquema)
select * from syscat.tables
para obtener todas las columnas: (donde tabname = your_tabname)
select * from syscat.columns
si está utilizando Aqua Data studio, simplemente escriba select * from table_name y en lugar de presionar execute, presione ctrl + D.
Usted podrá ver la descripción de la tabla
sysibm.syscolumns
la respuesta de sysibm.syscolumns
Select distinct(name), ColType, Length from Sysibm.syscolumns where tbname = ''employee'';
drop view lawmod9t.vdesc
create view lawmod9t.vDesc as select
upper(t.table_cat) as Catalog,
upper(t.table_schem) as Schema,
upper(t.table_name) as table,
t.table_text as tableDesc,
c.system_column_name as colname_short,
c.column_name as colname_long,
c.column_text as coldesc,
c.Type_Name as type,
c.column_Size as size
from sysibm.SQLColumns c
inner join sysibm.sqltables t
on c.table_schem = t.table_schem
and c.table_name = t.table_name
select * from vdesc where table = ''YPPPOPL''