SchemaCrawler es un código abierto, multiplataforma y API Java de libre distribución (Application Programming Interface) que ha sido diseñado desde cero para ayudar a los desarrolladores de aplicaciones trabajar fácilmente con los metadatos de base de datos. También es una utilidad de documentación del esquema de base de datos y base de datos de la comprensión del esquema y la herramienta de descubrimiento.
El software ayudará a los desarrolladores de Java en la búsqueda de columnas y tablas usando expresiones regulares (expresiones regulares), encontrando problemas con el diseño del esquema, para usar el lenguaje de programación JavaScript para secuencias de comandos contra la base de datos, así como con cualquier base de datos JDBC diagramming.Supports alimentado característica databaseAnother interesante del software SchemaCrawler es que soporta cualquier base de datos alimentada JDBC. Sin embargo, para su comodidad, SchemaCrawler incluye controladores para la gestión de bases de datos relacionales más común systems.I quieren ver un ejemplo de uso! Si quieres ver un ejemplo de uso de cómo funciona el software SchemaCrawler, por favor, eche un vistazo al ejemplo a continuación.
SchemaCrawlerOptions opciones finales = new SchemaCrawlerOptions ();
// Establecer qué detalles son necesarios en el esquema - esto afecta a la
// Tiempo necesario para rastrear el esquema
options.setSchemaInfoLevel (SchemaInfoLevel.standard ());
base de datos de base de datos final = SchemaCrawlerUtility.getDatabase (conexión, opciones);
para (esquema esquema definitivo: database.getSchemas ())
{
System.out.println (esquema);
por (tabla mesa final: database.getTables (esquema))
{
System.out.print ("o ->" + mesa);
para (última columna Columna: table.getColumns ())
{
System.out.println ("o ->" + columna);
}
}
} En el hoodTaking un vistazo bajo el capó del proyecto SchemaCrawler, podemos notar que se ha escrito completamente en el lenguaje de programación Java. Hemos probado con éxito el software con los ordenadores de apoyo, ya sea de los 64 o de 32 bits del sistema de instrucción architectures.Runs en Linux, BSD, Windows y MacBeing escrito en Java, SchemaCrawler es un software multiplataforma que funciona con cualquier sistema operativo de la computadora donde el Java Runtime Environment (JRE) está disponible, incluyendo GNU / Linux, BSD, Microsoft Windows y Mac OS X
¿Qué hay de nuevo en esta versión:.
< p>- enlaces de fijación en el sitio web.
¿Qué hay de nuevo en la versión 04.12.02:.
- Fix conexión de Oracle
¿Qué hay de nuevo en la versión 12.03.02:.
- Mejores argumentos de conexión
¿Qué hay de nuevo en la versión 10.08.02:.
- avisos de copyright Actualizado
- javadocs fijos, utilizando el estándar Java 7 estilos.
¿Qué hay de nuevo en la versión 8.10.01:
- Recorte todos los nombres de tabla, para permitir Informix para que coincida correctamente.
¿Qué hay de nuevo en la versión 10.8:
- Proporcionar información más completa sobre las restricciones de tabla, incluyendo detalles de columnas con restricciones .
¿Cuál es nuevo en la versión 10.7:
- Proporcionar información más completa sobre las restricciones de tabla. Cambiar el nombre de las restricciones de comprobación de restricciones de tabla.
¿Cuál es nuevo en la versión 10.6:.
- InclusionRule cambiado a una interfaz, para permitir implementaciones personalizadas
- Fijo falta de apoyo a los mapas de tipo por parte del conductor de base de datos de Sybase IQ.
¿Qué hay de nuevo en la versión 10.4:.
- definiciones de vistas fijas para PostgreSQL
- Fijo recuperar metadatos de índice para las tablas, trabajando alrededor de PostgreSQL insectos # 3480 # 6253.
- Añadido recuperar definiciones de índices para PostgreSQL y Oracle.
- Añadido recuperar definiciones de vista para Apache Derby.
¿Qué hay de nuevo en la versión 10.1:
- Soporte SchemaCrawler para J2SE 7 solamente, ya que las versiones anteriores de Java son obsoleta. Modificada la base de código a utilizar J2SE 7 construcciones.
- Nueva opción de línea de comandos, -sólo-juego, para mostrar sólo las tablas de juego, y no muestra las claves externas que hacen referencia a otras tablas no coincidentes. Siguiendo el modelo de la opción grep análoga.
- Nueva opción para activar el ingreso de formato de codificación de archivos de comandos y plantillas. La opción es & quot; schemacrawler.encoding.input & quot; en el archivo de propiedades SchemaCrawler.
- opción de línea de comandos Renombrado -table_types a -tabletypes.
¿Cuál es nuevo en la versión 9.6:
- generación diagrama fijo en Linux cuando se suministran sin opciones GraphViz.
- Añadido nombres de disparo a la salida JSON por defecto. Alta nueva variable de configuración, schemacrawler.format.hide_trigger_names suprimir nombres de activación en todos los formatos de salida.
- Añadido nueva opción -portablenames de línea de comandos, para permitir una fácil comparación entre las bases de datos, ocultando los nombres extranjeros clave, nombres de restricción, nombres de disparo, índice y los nombres de clave principal, y no muestra el nombre de la tabla totalmente calificado.
¿Cuál es nuevo en la versión 9.5:
- Actualización generación HTML tener subtítulos consistente para todas las tablas. Datos numéricos es alineado a la derecha en HTML, y reportada correctamente en JSON también. Estos cambios afectan a otros formatos de salida también.
- Actualización Oracle URL de conexión de base de datos a la nueva sintaxis.
¿Cuál es nuevo en la versión 9.4:.
- Arreglo para honrar a las opciones de formato de texto en la producción de puntos GraphViz
¿Cuál es nuevo en la versión 9.3.2:.
- Arreglo para honrar opciones de clasificación en la salida JSON
¿Cuál es nuevo en la versión 9.3.1:.
- Arreglo para generar diagramas en Unix
¿Qué hay de nuevo en la versión 9.3:.
- asociaciones débiles se devuelven ordenados
- Agregado posibilidad de especificar opciones de línea de comandos adicionales para GraphViz, ya sea utilizando las propiedades del sistema Java, o variables ambientales.
¿Qué hay de nuevo en la versión 9.2:.
- Fijo script de Windows, sc.cmd
- Mejor soporte para SQLite, incluido el conductor última base de datos, la presentación de informes de las claves externas, y ver las definiciones.
- Actualización del controlador JDBC jTDS a 1.2.6, para Microsoft SQL Server.
- Obsoleto el método getType () en objetos de base de datos.
¿Qué hay de nuevo en la versión 9.1:.
- ejemplos Añadido para Groovy, Ruby y Python scripting
- SchemaCrawler está incluido como un tarro de OSGi.
¿Cuál es nuevo en la versión 9.0:
- El API ha cambiado de versiones 8.x. Todas las llamadas a la API devuelven colecciones en lugar de arrays. Los esquemas no son contenedores, pero las etiquetas para los objetos de base de datos. Mesas y rutinas (procedimientos almacenados y funciones) están disponibles directamente en la base de datos, y hay nuevos buscadores para buscar por esquema.
- Soporte para funciones de base de datos se ha añadido. Todas las referencias a procedimientos almacenados en el código y la documentación ahora se refieren a las rutinas. Procedimientos almacenados y funciones son tratados de la misma manera, como rutinas.
- SchemaCrawler ahora permite que las consultas que se especifican en la línea de comandos. Si un comando no es reconocido, o no es una consulta con nombre, se ejecuta como si se trata de una consulta.
- El formato de salida incluye definiciones trgger como parte del esquema, en lugar de que la salida detallada esquema.
- Conexiones de base de datos tienen que especificarse en la línea de comandos, proporcionando el nombre de la clase controlador y URL. Conexiones de base de datos ya no pueden ser definidos en los archivos de propiedades.
- Hay nuevas opciones de línea de comandos. -V, --version Imprimirá la versión SchemaCrawler y salir. Hay estándar más corto y más (Unix) sinónimos -u (por -user), -c (para -command), y -O (por -output). Los -procedimientos interruptor se ha renombrado -routines.
¿Qué hay de nuevo en la versión 8.17:
- La salidas de formato de salida HTML HTML5 y CSS3 válido, tan válida XML.
- salida JSON admite todas las opciones de formato que el otro soporte de formatos de texto.
- Un nuevo método, getShortName (), obtener el nombre no calificado de columnas y otros objetos dependientes.
- Una nueva opción de formato de texto, & quot;. & Quot ;, schemacrawler.format.show_unqualified_names muestra el nombre no calificado en la salida de texto, para comparaciones más sencillas a través de diferentes catálogos y esquemas
¿Qué hay de nuevo en la versión 8.15:.
- Agregado de Distribución para Sybase IQ
¿Qué hay de nuevo en la versión 8.11:.
- Añadida la capacidad para configurar línteres SchemaCrawler
- Se ha añadido una nueva pelusa de claves sustitutas inútiles.
- Añadida la capacidad para etiquetar tablas y columnas con metadatos adicionales atributos de consultas SQL.
¿Qué hay de nuevo en la versión 8.10:.
- cambiar el aviso de derechos de autor en el código fuente
- Añadida la capacidad para utilizar la configuración de las versiones empaquetadas de SchemaCrawler, por lo que desencadena y metadatos extendidos están disponibles.
- Comienza añadir teh posibilidad de configurar línteres SchemaCrawler.
¿Qué hay de nuevo en la versión 8.9:
- añadir Agregado SchemaCrawler Lint como un informe separado, con capacidad para añadir línteres personalizados. añadir Agregado línteres SchemaCrawler adicional.
- añadir Agregado capacidad de extender SchemaCrawler con comando personalizado.
- Fix Fijo cuestión con limitaciones con el mismo nombre en diferentes esquemas.
¿Cuál es nuevo en la versión 8.8:
- Agregado JSON y formatos de salida TSV. Sualeh Fatehi
- Movido SchemaCrawler Maven plugin en un nuevo proyecto en SourceForge.
¿Cuál es nuevo en la versión 8.7:
- Nuevo vistas INFORMATION_SCHEMA para proporcionar Oracle detalles de metadatos. Sualeh Fatehi
- actualización Actualizar versiones de los controladores de base de datos. Sualeh Fatehi
- Fix Fijo bug # 3392557 - NullPointer excepción iniciada cuando columnas excluidos en Oracle. Sualeh Fatehi
- arreglar error fijo # 3392976 - Tablas de excepciones recuperación: No se pudo recuperar índices de esquemas de Oracle con $ en el nombre. Sualeh Fatehi
- Fix Fijo bug # 3401752 -. Intento de localizar la base de datos 'dbo' por su nombre no
¿Qué hay de nuevo en la versión 8.6:
- Nueva función para la cadena, o ejecutar varios comandos SchemaCrawler utilizando JavaScript .
¿Qué hay de nuevo en la versión 8.5.1:
- los derechos de autor cambió a 2011. Sualeh Fatehi
- grep fijo. Sualeh Fatehi
- para proporcionar información de índice de SQL Eliminado. Sualeh Fatehi
- Mejor cobertura de prueba de unidad. Reestructuración de proyectos de Eclipse. Sualeh Fatehi
¿Qué hay de nuevo en la versión 8.5:
- los derechos de autor cambió a 2011. Sualeh Fatehi
- grep fijo. Sualeh Fatehi
- para proporcionar información de índice de SQL Eliminado. Sualeh Fatehi
- Mejor cobertura de prueba de unidad. Reestructuración de proyectos de Eclipse.
¿Cuál es nuevo en la versión 8.4:
- comandos SchemaCrawler se han simplificado. Por ejemplo, & quot; list_objects & quot; ahora no es más que & quot; lista & quot;.
- -procedimientos = se utiliza como parámetro de línea de comandos en lugar de -show_stored_procedures.
- Problemas con la obtención de tablas de PostgreSQL y las claves externas Derby son fijos.
- -infolevel es ahora un argumento de línea de comando obligatoria.
¿Qué hay de nuevo en la versión 8.3.2:
- Salida detallada contiene ahora la columna de Observaciones, junto con las observaciones de mesa .
- Un error con gráficos que tienen claves externas a las tablas no incluidos en el grep se ha solucionado.
¿Cuál es nuevo en la versión 8.3.1:
- Una nueva opción de línea de comandos, -urlx, pasa propiedades URL JDBC adicionales a las distribuciones en paquete.
- Detalles sobre la & quot; principal & quot; línea de comandos está en el cómo-a la sección de la página web oficial.
¿Qué hay de nuevo en la versión 7.6:
- especificación fija de SID de Oracle utilizando el modificador de línea de comandos -database , así como spcification de número de puerto.
- classpath shell script fijo.
¿Cuál es nuevo en la versión 7.3.1:
- Mejora de la clase JavaSqlType, para contener el SQL grupo Tipo. Nueva búsqueda por nombre de tipo de datos añade a JavaSqlTypesUtility.
- Método Eliminado, getTypeClass (), desde ColumnDataType.
- métodos en desuso eliminadas de la agrupación de los tipos de datos SQL (como Isreal ()) de la clase ColumnDataType.
¿Qué hay de nuevo en la versión 7.2:.
- Mejor modelado de privilegios y donaciones
- Corrección de errores para la obtención de índices y claves externas con el conductor de Oracle.
- Añadido orden natural para tablas, basado en las claves foráneas, y la opción de configuración nueva correspondiente, y el interruptor de línea de comandos, -sorttables. También se han añadido nuevos métodos de la API para obtener tablas padre y, sobre la base de las claves externas.
- Mango nulos esquemas de bases de datos que no son compatibles con los esquemas, tales como MySQL.
- Permita que los datos volcados en tablas contienen objetos binarios, fijando el orden SELECT.
¿Qué hay de nuevo en la versión 7.2:.
- Mejor modelado de privilegios y donaciones
- Corrección de errores para la obtención de índices y claves externas con el conductor de Oracle.
- Añadido orden natural para tablas, basado en las claves foráneas, y la opción de configuración nueva correspondiente, y el interruptor de línea de comandos, -sorttables. También se han añadido nuevos métodos de la API para obtener tablas padre y, sobre la base de las claves externas.
- Mango nulos esquemas de bases de datos que no son compatibles con los esquemas, tales como MySQL.
- Permita que los datos volcados en tablas contienen objetos binarios, fijando el orden SELECT.
¿Qué hay de nuevo en la versión 7.1:
- Este comunicado hace un uso eficiente de las conexiones de base de datos y juega bien con conexiones agrupadas.
- Hay mejores mensajes de registro, incluyendo para la configuración, ya que cuando una conexión de base de datos está abierta o cerrada.
- Hay varias mejoras de rendimiento, mejorando la velocidad de recuperación del esquema.
¿Cuál es nuevo en la versión 6.4:
- La versión 6.4 añade una SchemaCrawler pre-envasados para SQLite. También hay un algoritmo mejorado para encontrar asociaciones débiles, y un nuevo modificador de la línea de comandos para ordenar las columnas en orden alfabético.
¿Cuál es nuevo en la versión 6.3:
- funcionalidad grep SchemaCrawler está integrado en la línea de comandos SchemaCrawler. Esto significa que todos los comandos SchemaCrawler, incluyendo gráficos, puede utilizar las opciones de filtrado y grep. La ayuda en las opciones de línea de comandos ha sido re-escrito. Si no se especifican los comandos, por defecto standard_schema (un nuevo comando), que proporciona los detalles necesarios más comunes del esquema. SchemaCrawler produce archivos Graphviz DOT para generar diagramas de esquema, como uno de sus formatos de salida nativos.
¿Qué hay de nuevo en la versión 6.2:
- Una nueva característica para inferir asociaciones débiles entre las tablas, aunque no hay una clave externa. Ruby on Rails se admiten esquemas de mesa, así como otras relaciones simples. Nombre de la tabla de prefijos se detectan automáticamente.
- soporte del diagrama de base de datos utilizando Graphviz. Las claves primarias se indican en un color más oscuro que otras columnas. Las claves externas se indican con conectores de flecha. Asociaciones débiles entre las tablas se muestran en líneas discontinuas. Múltiples formatos de salida son compatibles. Apoyo a Jung se deja caer.
¿Cuál es nuevo en la versión 6.0.2:
- Esta versión corrige un problema con esquemas de MySQL <. / li>
¿Cuál es nuevo en la versión 6.0.1:
- Corrección de errores de reconocimiento -schemapattern en la línea de comandos, y los tipos de datos con el driver de Oracle.
¿Cuál es nuevo en la versión 6.0:
- Esta versión introduce una serie de cambios en la API y nuevas características.
- Entre ellas es el apoyo total para los esquemas múltiples en un catálogo.
- La API SchemaCrawler devuelve un catálogo como el objeto de nivel superior, que contiene esquemas.
- Otro cambio es que SchemaInfoLevel es una opción, no una propiedad CrawlHandler, para permitir una mejor separación de preocupaciones.
- Por último, SchemaCrawler tiene soporte para scripting JavaScript con J2SE 6 y superior.
Requisitos :
- Edición Oracle Java Standard Runtime Environment
Comentarios que no se encuentran