4
respuestas

H2 Console no muestra las tablas

Hola, tengo un problema con H2 console. Creo la base de datos como se indica en los videos e instrucciones, luego ejecuto todo el codigo de la etapa 1 de Java y JPA: consultas avanzadas, rendimiento y modelos complejos y finalmente cuando quiero verificar con h2 Console que todo este creado no me muestro nada, ya no se que hacer hice los pasos tal y como se indican y no puedo obtener el mismo resultado, agredeceria la ayuda !!

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

4 respuestas

Hola Alex,

Sí, por lo que veo en tu descripción, estás siguiendo los pasos correctamente, pero aún así no puedes ver tus tablas en la consola H2.

Un par de cosas que podrían estar sucediendo aquí:

  1. Asegúrate de que estás conectándote a la base de datos correcta. En el video, el instructor menciona que el nombre de la base de datos es "database", y que debe estar en la ruta especificada en la URL. Por lo tanto, asegúrate de que estás usando la URL correcta para conectarte a la base de datos.

  2. Asegúrate de que estás ejecutando tu código antes de intentar ver las tablas en la consola H2. Las tablas y los datos solo se crean en la base de datos después de que se ejecuta el código.

  3. Por último, podría ser un problema de sincronización. A veces, puede haber un ligero retraso entre la ejecución de tu código y la actualización de la consola H2. Por lo tanto, después de ejecutar tu código, intenta refrescar la consola H2.

Si después de probar estas sugerencias sigues teniendo problemas, te recomendaría que revises tu código para asegurarte de que no hay errores. También podrías intentar reiniciar tu IDE o incluso tu ordenador, a veces eso puede ayudar a resolver problemas misteriosos.

Espero que estas sugerencias te ayuden a resolver tu problema. Mucho éxito en todo lo que te propongas y si tienes alguna duda aquí estaremos para apoyarte.

¡Vamos juntos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios

Espero esto te sirva. Ten cuidado con crear el archivo de la base de datos ".trace" el archivo debe ser solo 1 con extensión ".mv" eso tambien me ha generado conflictos, estoy indagando el porqué se crea y cual es su función, se crea automaticamente, lo que he hecho al momento para evitar que esto de problemas es eliminar los archivos y volver a correr el programa y se vuelve a crear la base de datos como tal.

Procura que al correr el programa la base de datos en consola H2 esté cerrada. Es lo que tengo al momento, sigo buscando las causas, los archivos también se muestran como ".trace.db" y ".mv.db"

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Tambien revisa bien el tema de las rutas (URL) en el archivo persistence así como en el h2 debes poner la ubicación y al final el nombre de la base de datos. Revisa en el explorador de archivos los archivos que se crearon de la base de datos, solo debes tener 1 y que ho haya conflictos de nombres.

Hola buenas tardes, no se si esto le sea útil pero a mi me funcionó. lo primero que hice fue actualizar todas las dependencia de maven en pom.xml y la version de java a la que se compila

<plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.9.0</version>
                <!-- <version>3.8.0</version> -->
                <configuration>
                    <!-- <release>11</release>-->
                    <release>20</release>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <!-- <version>5.6.14.Final</version> -->
            <version>5.6.14.Final</version>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <!-- <version>2.1.214</version>-->
            <version>2.2.222</version>
        </dependency>
    </dependencies>

no si antes comentar las versiones que no me daban error para no romper la aplicación como ya la tenia, el segundo paso fue ir en eclipse a Project -> Update Maven Project

una vez realizado estos pasos borro el archivo de la base de datos y el .trace que estaba en la carpeta. al correr la aplicación se generó un nuevo archivo database.mv.db y al abrirlo con la consola de H2 ya se encontraban las tablas allí! espero que les sirva

Adicionalmente dejo el fragmento de mi persistence.xml

<persistence-unit name="tienda" transaction-type="RESOURCE_LOCAL">
        <!-- <class>br.com.alura.tienda.modelo.Producto</class>  -->
        <properties>
            <property name="javax.persistence.jdbc.driver" value="org.h2.Driver" />
            <property name="javax.persistence.jdbc.url"
                value="jdbc:h2:C:\Users\elsan\OneDrive\Escritorio\jpa\database" />
            <property name="javax.persistence.jdbc.user" value="sa" />
            <property name="javax.persistence.jdbc.password" value="1234" />

            <property name="hibernate.dialect"
                value="org.hibernate.dialect.H2Dialect" />
            <property name="hibernate.show_sql" value="true" />
            <property name="hibernate.format_sql" value="true" />
            <property name="hibernate.hbm2ddl.auto" value="create-drop" />
        </properties>
    </persistence-unit>

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

El instructor recién menciona un error, que muchos estudiantes tuvieron, incluyéndome, y se estancaron en esa parte. Me parece una negligencia por parte del instructor saltarse esos detalles que atrasan la compresión del tema.