¿Cómo ver todas las tablas en una base de datos HSQLDB?

Resuelto nobody asked hace 15 años • 6 respuestas

Normalmente uso SQLDeveloper para explorar la base de datos, pero no pude hacer que funcione con HSQLDB y no sé qué tablas ya están creadas... Supongo que es una pregunta específica del proveedor y no de SQL simple, pero el punto es: ¿cómo? ¿Puedo ver las tablas para poder eliminarlas o modificarlas?

nobody avatar Feb 27 '09 00:02 nobody
Aceptado

El estándar ANSI SQL92 para consultar metadatos de bases de datos está contenido dentro de las INFORMATION_SCHEMAestructuras de datos.

No tengo idea de si su base de datos admite esto o no, pero intente lo siguiente:

SELECT *
FROM   INFORMATION_SCHEMA.TABLES

Investigando más a fondo, parece que HSQLDB sí admite INFORMATION_SCHEMA, pero con nombres ligeramente no estándar.

Todas las tablas SYSTEM_*las tienen antepuestas, por lo que el ejemplo anterior se leería

SELECT *
FROM   INFORMATION_SCHEMA.SYSTEM_TABLES

No tengo forma de probar esto y la respuesta se encontró en sourceforge .

Steve Weet avatar Feb 26 '2009 17:02 Steve Weet

¡Genial gracias! He estado buscando en la Web esa información. Esto recuperará solo la información de campo de sus tablas:

SELECT TABLE_NAME, COLUMN_NAME, TYPE_NAME, COLUMN_SIZE, DECIMAL_DIGITS, IS_NULLABLE FROM INFORMATION_SCHEMA.SYSTEM_COLUMNS WHERE TABLE_NAME NOT LIKE 'SYSTEM_%'

Puede recuperar índices, información de clave principal y todo tipo de cosas de INFORMATION_SCHEMA.SYSTEM_TABLES. Me encanta la documentación :p

 avatar Jul 12 '2009 10:07

Si está en la línea de comandos, es posible que desee probar Hsqldb SqlTool, documentado en el Manual de SqlTool (hsqldb.org).

  • Coloque la información de conexión de su base de datos en " ~/sqltool.rc" y elija cualquier DBNAME que desee, sustituya el nombre de usuario y la contraseña correctos, si los conoce.
    • urlid DBNAME
    • url jdbc:hsqldb:/path/to/hsql/database
    • nombre de usuario SA
    • contraseña
  • Instale la herramienta con: apt-get install hsqldb-utils(en Ubuntu)
  • Conéctese con hsqldb-sqltool DBNAME# en Ubuntu
  • Consejo para otros sistemas:java -jar YourHsqlJar.jar DBNAME
  • Mostrar tablas con:\dt
  • Mostrar columnas con: \d TABLENAME
  • Consultas estándar como:SELECT * FROM …;
  • Edite (añada) el último comando con::a
  • Dejar de fumar con:\q
  • Ver comandos especiales con: \?O:?

¡Buena suerte!

Mister_Tom avatar Oct 28 '2013 22:10 Mister_Tom

Utilice el \dtcomando cuando presione el >sqlsímbolo en la línea de comando para HSQLDB.

specialk1st avatar Dec 24 '2015 15:12 specialk1st