16 puntos por GN⁺ 2024-03-24 | 1 comentarios | Compartir por WhatsApp
  • Consulta SQL que genera el esquema de una base de datos SQLite en formato GraphViz
  • Se puede guardar en un archivo o canalizar al comando dot para convertirlo a PNG/SVG/PDF, etc.
    sqlite3 path/to/database.db -init sqlite-schema-diagram.sql "" > schema.dot dot -Tsvg schema.dot > schema.svg
  • Requiere SQLite3 3.37.0 o superior (incluye la función para obtener table_list)

1 comentarios

 
GN⁺ 2024-03-24
Comentarios de Hacker News
  • El autor pensó que su trabajo era demasiado específico y trivial como para atraer mucha atención en Hacker News, pero, contra lo esperado, sí la recibió.

    Al autor le sorprendió que su trabajo recibiera atención, ya que pensaba que no llamaría la atención en Hacker News.

  • Cuando lo probó con el repositorio Fossil de SQLite, el diagrama resultante no tenía flechas de relación. El esquema de Fossil usa por defecto cláusulas REFERENCES que apuntan a la clave primaria de las tablas. El generador de diagramas requiere nombres de columna explícitos.

    Al probarlo con el repositorio Fossil de SQLite, el diagrama no mostró flechas que indicaran relaciones. Esto sugiere que se debe a la forma en que el esquema de Fossil referencia claves primarias, y a que el generador de diagramas necesita nombres de columna explícitos.

  • En una empresa donde trabajó durante la era puntocom, usaban una impresora grande para imprimir pósters con diagramas del esquema de la base de datos y los colgaban en la pared, lo que era muy útil para el personal nuevo.

    En el pasado, una empresa imprimía diagramas del esquema de la base de datos con una impresora de gran formato y los colgaba en la pared para ayudar a los nuevos empleados.

  • Alguien creó una herramienta parecida para uso personal: recibe archivos .dot, ofrece una UI sencilla, permite elegir las tablas/relaciones que se incluirán en el diagrama final, resaltar tablas y agregar tablas relacionadas, agregar las tablas que están en la ruta más corta entre dos tablas, asignar colores al diagrama final, generar la fuente del grafo necesaria y copiarla al portapapeles, y cargar una de dos páginas de GraphViz donde se puede ver el grafo.

    La herramienta creada por el usuario procesa archivos .dot y, mediante una interfaz de usuario, permite seleccionar tablas y relaciones del diagrama, asignar colores y ofrecer opciones para mostrar solo campos clave, además de copiar la fuente del grafo al portapapeles para verla en una página de GraphViz.

  • WWW SQL Designer es una herramienta en línea para diagramas SQL.

    WWW SQL Designer es una herramienta para dibujar diagramas SQL en línea.

  • El desarrollador disfruta "abusar" de SQL en sqlite-schema-diagram.sql, y usa ese término para describir su propio trabajo.

    El desarrollador se divierte "abusando" de SQL en su trabajo, y usa ese término desde su propia perspectiva.

  • Alguien encontró esta herramienta en un servidor de juegos que usa SQLite y está pensando en añadirla al pipeline de CI. La base de datos principal tiene muchas relaciones, así que sería útil para que otras personas trabajen con ella.

    Se está considerando integrar esta herramienta en un pipeline de CI para un servidor de juegos que usa SQLite. Se espera que sea útil para otros desarrolladores por la gran cantidad de relaciones en la base de datos principal.

  • La herramienta de diagramas parece tener menos dependencias que Schemaspy.org, aunque Schemaspy.org sigue siendo excelente para bases de datos grandes.

    La herramienta de diagramas parece requerir menos dependencias que Schemaspy.org, pero Schemaspy.org también es muy adecuada para bases de datos grandes.

  • Paracelsus genera diagramas en formato Markdown o dot para bases de datos definidas con SQLAlchemy.

    Paracelsus es una herramienta que genera diagramas en formato Markdown o dot para bases de datos definidas con SQLAlchemy.

  • A los 5 minutos de haberla visto, alguien ya había integrado esta herramienta en un pipeline de GitLab CI.

    El usuario descubrió esta herramienta y rápidamente la integró en un pipeline de GitLab CI.