Un buen diseño de base de datos comienza con una lista de los datos que desea incluir en su base de datos y lo que desea poder hacer con la base de datos más adelante. Todo esto se puede escribir en su propio idioma, sin ningún SQL. En esta etapa, debe intentar no pensar en tablas o columnas, sino simplemente pensar: “¿Qué necesito saber?” No tome esto demasiado a la ligera, porque si descubre más tarde que olvidó algo, por lo general, debe comenzar de nuevo. Agregar cosas a su base de datos es principalmente mucho trabajo.
Existen muchas herramientas en línea que pueden ayudarlo:
SQLDbm
- Precio: gratis
- Ingeniería avanzada: use SQLDBM para crear un modelo físico o ERD de su base de datos
- Ingeniería inversa: use la función de ingeniería inversa para exportar su esquema de base de datos como un script SQL
caracteristicas:
- ¿De dónde viene el diseño genérico alienígena?
- Arquitectura: ¿Cómo se puede representar la cultura y la psicología a través del diseño (teniendo en cuenta el contexto físico y social)?
- ¿Qué opinas sobre el diseño de Apple Watch?
- Cómo tomar cursos de diseño de interiores en línea
- Si puedo demostrar que la idea de una aplicación móvil y un diseño en particular fueron míos en primer lugar, ¿qué puedo hacer si alguien intenta robarla mientras hablamos?
- Cree objetos de bases de datos como tablas, objetos, relaciones, índices, de forma rápida e intuitiva.
- Modifique y edite objetos de base de datos en línea en su diagrama
- Copiar o mover columnas a través de tablas
- Acercar y alejar diagramas
- Diseño sobre el terreno en cualquier lugar en cualquier navegador [1]
DbDesigner.net
- Precios: versión básica gratuita; versión de pago a partir de $ 50 / año
- Productos de base de datos compatibles: modele y genere SQL para MySQL, SQLite, SQL Server, PostgreSQL, Oracle
- Navegadores compatibles: no especificado
- Ingeniería inversa: Importar SQL desde MySQL (característica descrita como “experimental”)
Vertabelo
- Precios: versión básica gratuita; versión académica gratuita; versión avanzada disponible para una suscripción mensual a partir de $ 9 / mes o por uso a partir de aproximadamente $ 1 / día; instalación interna a partir de $ 1399 por una tarifa de licencia única
- Productos de base de datos compatibles: modele y genere SQL para PostgreSQL 9.x, Oracle Database 11g, MySQL 5.5, SQLite 3.7.x, DB2 9.7, SQL Server 2012, HSQLDB 2.3; también exportar modelo como XML
- Navegadores compatibles: Chrome, Safari (beta)
- Ingeniería inversa: herramienta gratuita disponible; También puede importar directamente desde un archivo SQL o XML
GenMyModel
- Precios: versión básica gratuita; versión más avanzada a partir de $ 4 / mes; versión profesional que incluye todas las funciones desde $ 19.20 / mes para usuarios de uno a cinco
- Productos DB admitidos: modelado neutral del producto; generador genérico de SQL que requiere personalización; generador de SQL de muestra para PostgreSQL; exportar como intercambio de metadatos XML (XMI)
- Navegadores compatibles: Internet Explorer, Chrome, Firefox, Safari, Opera
- Ingeniería inversa: parece no haber forma de importar SQL, pero puede importar modelos de Visio 2013 [2]
También debe seguir estas reglas que he encontrado en CodeProject:
- ¿Cuál es la naturaleza de la aplicación (OLTP u OLAP)?
- Divide tus datos en piezas lógicas, simplifica la vida
- No se sobredosifique con la regla 2
- Trate los datos no uniformes duplicados como su mayor enemigo
- Esté atento a los datos separados por separadores
- Esté atento a dependencias parciales
- Elija columnas derivadas preciosamente
- No sea difícil evitar la redundancia, si el rendimiento es la clave
- Los datos multidimensionales son una bestia completamente diferente
- Centralizar el diseño de la tabla de valores de nombre
- Para datos de referencia jerárquica ilimitados PK y FK [3]
Notas al pie
[1] SqlDbm – Modelador de bases de datos SQL
[2] Cinco servicios de modelado de bases de datos en línea: conversación simple
[3] 11 reglas importantes de diseño de bases de datos que sigo