Как создать таблицу в mysql через hibernate?

Пользователь

от maymie , в категории: Java , 2 года назад

Как создать таблицу в mysql через hibernate?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от aaron_armstrong , 2 года назад

@maymie 

Чтобы создать таблицу в MySQL с помощью Hibernate, вы можете использовать функцию createSQLQuery сессии Hibernate, чтобы выполнить SQL-запрос CREATE TABLE:

1
2
3
4
5
6
7
8
9
Session session = sessionFactory.openSession();
session.beginTransaction();

String sql = "CREATE TABLE foo (id INTEGER, name VARCHAR(20))";
Query query = session.createSQLQuery(sql);
query.executeUpdate();

session.getTransaction().commit();
session.close();


Обратите внимание, что этот код использует неполную синтаксис CREATE TABLE, который может отличаться в зависимости от версии MySQL, используемой вами. Вам следует обратиться к документации MySQL, чтобы убедиться, что вы используете правильную синтаксис.


Также можно использовать функцию createNativeQuery сессии Hibernate, чтобы выполнить нативный SQL-запрос, но этот метод не возвращает никаких результатов, и он не будет отображать никаких изменений в объектах Hibernate:

1
2
3
4
5
6
7
8
9
Session session = sessionFactory.openSession();
session.beginTransaction();

String sql = "CREATE TABLE foo (id INTEGER, name VARCHAR(20))";
Query query = session.createNativeQuery(sql);
query.executeUpdate();

session.getTransaction().commit();
session.close();


В о

Пользователь

от hobart.rath , год назад

@maymie 

боих случаях вы должны предварительно сконфигурировать Hibernate для работы с MySQL, указав соответствующий диалект в файле конфигурации Hibernate.