Usando Apache Derby con Java (J2ME, pero no creo que marque la diferencia) ¿hay alguna manera de verificar si una base de datos ya existe y contiene una tabla?Apache Derby - Comprobar la base de datos ya creada?
Respuesta
No conozco ninguno, excepto algunos pocos, a diferencia de MySQL donde tenemos esa facilidad de IF EXIST.
Lo que hace es intentar conectarse a la base de datos, si no es probable que no esté allí. Y después de una conexión exitosa, puede hacer una simple selección, como SELECT count (*) FROM TABLE_NAME, para saber si la tabla existe o no. Usted estaría dependiendo de la excepción. Incluso en un ejemplo oficial de Sun, he visto un trabajo similar.
En Oracle tenemos tablas de diccionario para conocer los objetos de la base de datos. Dudo que tengamos algo así en Derby.
[Editado]
Bueno, he encontrado que hay una manera de saber si la tabla existe. Pruebe, SELECCIONE tablename FROM SYSTABLES. Es para verificar la existencia de una tabla, para verificar la base de datos es posible que deba hacer algo similar, como expliqué anteriormente.
Adeel, también se puede utilizar Connection.getMetaData para devolver un objeto DatabaseMetaData, a continuación, utilizar el getTables, una vez que tenga la conexión a la base de datos, por supuesto. Esto tiene la ventaja de trabajar para cualquier base de datos con un controlador JDBC que valga la pena.
Para comprobar si existe la base de datos, si está utilizando Derby de manera integrada o si el servidor está en la misma máquina, puede verificar si existe la carpeta para la base de datos. Aunque es un poco kludgy Haría lo que sugiere Adeel e intentaré conectarme, atrapando la excepción si no está allí.
Sugeriría obtener el objeto DatabaseMetaData, y luego usar el método getTables (null, null, null, new String [] {"TABLE"}), que devuelve un ResultSet. Utilice el método next() del ResultSet, que devuelve un valor booleano, para comprobar si existen tablas. Si es cierto, tienes tablas en existencia. Falso, y la base de datos está vacía.
- 1. Apache Derby - java.sql.SQLException: Error al iniciar la base de datos
- 2. apache derby - explicar seleccionar
- 3. Apache Derby INSERTOS son lentos
- 4. Java DB/Apache Derby con Android
- 5. ¿Cómo reemplazar MySQL Server con Apache Derby como base de datos de una aplicación PHP?
- 6. base de datos sqlite no creada
- 7. ¿Puedo conectar Apache Derby DataBase con la aplicación de Android?
- 8. ¿Cómo usar SEQUENCE en Apache Derby?
- 9. Advertencia cuando se utiliza Apache Derby en la memoria
- 10. fuentes de datos derby - conexión rechazada
- 11. ¿Dónde se almacena la base de datos Derby cuando la creo desde Netbeans?
- 12. sql para el grupo de registro de límite por la base de datos in derby
- 13. Alterar tabla agregar columna DESPUÉS en la base de datos de derby
- 14. Cómo cerrar la base de datos en memoria de Derby Correctamente
- 15. conectando a la base de datos de derby con tomcat como el servidor
- 16. Configurando una base de datos Derby incrustada en una aplicación Java independiente
- 17. ¿A dónde se dirigió el complemento Apache Derby Eclipse?
- 18. ¿Cómo navegar por una base de datos de memoria derby con Eclipse Datasource Explorer?
- 19. Android: excepción de estado ilegal de base de datos SqLite (base de datos ya cerrada)
- 20. ¿Cómo comprobar si el USUARIO ya está creado en la base de datos o no en SQL?
- 21. ¿Dónde está la base de datos SQLite creada automáticamente por django?
- 22. Comprobar si un evento ya existe
- 23. ¿Cómo crear una nueva base de datos con la extensión hstore ya instalada?
- 24. ¿Cómo entender una base de datos que ya está desarrollada?
- 25. IllegalStateException: base de datos ya cerrada (con ViewPager)
- 26. Recuperar identificación de registro recién insertada en una base de datos Java DB (Derby)
- 27. Crear archivo inicial a partir de datos que ya están en la base de datos
- 28. CodeIgniter - Comprobando si ya existe un valor en la base de datos
- 29. ¿Existe alguna herramienta que no sea ij para buscar en una base de datos local de derby (carpeta)?
- 30. MySQL - consulta de la última tabla creada
Véase también http://stackoverflow.com/questions/584497/apache-derby-check-database-already-created – Raedwald