Java H2嵌入式数据库的模式相关问题
我正在构建一个JavaSwing桌面应用程序,但数据库有问题。在我做出决定之后在sql文件中的模式“studenti”和表“studenti.ocjene_studenata”中,当我启动程序时,我得到以下消息。到底会有什么问题?我想我的配置都是正确的。我将显示错误消息、xml配置应用程序、sql文件和变量注释。非常感谢Java H2嵌入式数据库的模式相关问题,java,mysql,sql,hibernate,Java,Mysql,Sql,Hibernate,我正在构建一个JavaSwing桌面应用程序,但数据库有问题。在我做出决定之后在sql文件中的模式“studenti”和表“studenti.ocjene_studenata”中,当我启动程序时,我得到以下消息。到底会有什么问题?我想我的配置都是正确的。我将显示错误消息、xml配置应用程序、sql文件和变量注释。非常感谢 ERROR: HHH000388: Unsuccessful: create table studenti.ocjene_studenata (ID integer gen
ERROR: HHH000388: Unsuccessful: create table studenti.ocjene_studenata (ID integer generated by default as identity, godina_studiranja integer, ime_studenta varchar(255), baze_podataka integer, matematika integer, napredne_baze_podataka integer, objektno_orijentirano_programiranje_2 integer, objektno_orijentirano_programiranje_1 integer, osnove_programiranja integer, programiranje integer, ocjena_mature integer, prezime_studenta varchar(255), prosjek double, primary key (ID))
kol 18, 2014 7:05:47 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
ERROR: Schema "STUDENTI" not found; SQL statement:
create table studenti.ocjene_studenata (
ID integer generated by default as identity,
godina_studiranja integer,
ime_studenta varchar(255),
baze_podataka integer,
matematika integer,
napredne_baze_podataka integer,
objektno_orijentirano_programiranje_2 integer,
objektno_orijentirano_programiranje_1 integer,
osnove_programiranja integer,
programiranje integer,
ocjena_mature integer,
prezime_studenta varchar(255),
prosjek double,
primary key (ID)
) [90079-171]
kol 18, 2014 7:05:47 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
kol 18, 2014 7:05:47 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 90079, SQLState: 90079
kol 18, 2014 7:05:47 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Schema "STUDENTI" not found; SQL statement:
insert into studenti.ocjene_studenata (ID, godina_studiranja, ime_studenta, baze_podataka, matematika, napredne_baze_podataka, objektno_orijentirano_programiranje_2, objektno_orijentirano_programiranje_1, osnove_programiranja, programiranje, ocjena_mature, prezime_studenta, prosjek) values (null, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [90079-171]
Exception in thread "AWT-EventQueue-0" javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Schema "STUDENTI" not found; SQL statement:
insert into studenti.ocjene_studenata (ID, godina_studiranja, ime_studenta, baze_podataka, matematika, napredne_baze_podataka, objektno_orijentirano_programiranje_2, objektno_orijentirano_programiranje_1, osnove_programiranja, programiranje, ocjena_mature, prezime_studenta, prosjek) values (null, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [90079-171]
at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1387)
at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1310)
at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1316)
at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:881)
at hr.tvz.programiranje.baza.DatabaseUtils.spremiRezultate(DatabaseUtils.java:18)
at hr.tvz.programiranje.java.swing.glavni.GlavniOkvir$3.actionPerformed(GlavniOkvir.java:177)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: org.hibernate.exception.GenericJDBCException: Schema "STUDENTI" not found; SQL statement:
insert into studenti.ocjene_studenata (ID, godina_studiranja, ime_studenta, baze_podataka, matematika, napredne_baze_podataka, objektno_orijentirano_programiranje_2, objektno_orijentirano_programiranje_1, osnove_programiranja, programiranje, ocjena_mature, prezime_studenta, prosjek) values (null, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [90079-171]
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:54)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:125)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:110)
at org.hibernate.engine.jdbc.internal.proxy.ConnectionProxyHandler.continueInvocation(ConnectionProxyHandler.java:146)
at org.hibernate.engine.jdbc.internal.proxy.AbstractProxyHandler.invoke(AbstractProxyHandler.java:81)
at com.sun.proxy.$Proxy9.prepareStatement(Unknown Source)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$2.doPrepare(StatementPreparerImpl.java:105)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:166)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareStatement(StatementPreparerImpl.java:103)
at org.hibernate.id.IdentityGenerator$GetGeneratedKeysDelegate.prepare(IdentityGenerator.java:89)
at org.hibernate.id.insert.AbstractReturningDelegate.performInsert(AbstractReturningDelegate.java:55)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2936)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3447)
at org.hibernate.action.internal.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:81)
at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362)
at org.hibernate.engine.spi.ActionQueue.addResolvedEntityInsertAction(ActionQueue.java:203)
at org.hibernate.engine.spi.ActionQueue.addInsertAction(ActionQueue.java:183)
at org.hibernate.engine.spi.ActionQueue.addAction(ActionQueue.java:167)
at org.hibernate.event.internal.AbstractSaveEventListener.addInsertAction(AbstractSaveEventListener.java:321)
at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:286)
at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:192)
at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:125)
at org.hibernate.ejb.event.EJB3PersistEventListener.saveWithGeneratedId(EJB3PersistEventListener.java:78)
at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:208)
at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:151)
at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:78)
at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:843)
at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:818)
at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:822)
at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:875)
... 38 more
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
<persistence-unit name="HibernatePersistenceUnit" transaction-type="RESOURCE_LOCAL">
<class>hr.tvz.programiranje.java.podaci.Podaci</class>
<properties>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.connection.driver_class" value="org.h2.Driver"/>
<property name="hibernate.connection.url" value="jdbc:h2:~/uspjehStudenata"/>
<property name="hibernate.connection.username" value="sa"/>
<property name="hibernate.connection.password" value=""/>
<property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>
create schema studenti;
create table studenti.ocjene_studenata(
ID INT generated always as identity,
ime_studenta varchar(300) not null,
prezime_studenta varchar (300) not null,
godina_studiranja int not null,
ocjena_mature int not null,
prosjek decimal(3,2) not null,
matematika int not null,
programiranje int not null,
objektno_orijentirano_programiranje_1 int not null,
objektno_orijentirano_programiranje_2 int not null,
osnove_programiranja int not null,
baze_podataka int not null,
napredne_baze_podataka int not null,
primary key(ID)
);
@Entity
@Table(name="studenti.ocjene_studenata")
public class Podaci {
@Id
@Column(name = "ID")
@GeneratedValue
private int ID;
@Column(name = "ime_studenta")
private String imeStudent;
@Column(name = "prezime_studenta")
private String prezimeStudent;
@Column(name = "godina_studiranja")
private int godinaStudiranjaInt;
@Column(name = "ocjena_mature")
private int ocjenaMatureInt;
@Column(name = "prosjek")
private double prosjekDbl;
@Column(name = "matematika")
private int ocjMatematika1Int;
@Column(name = "programiranje")
private int ocjProgramiranjeInt;
@Column(name = "objektno_orijentirano_programiranje_1")
private int ocjOOPIInt;
@Column(name = "objektno_orijentirano_programiranje_2")
private int ocjOOPIIInt;
@Column(name = "osnove_programiranja")
private int ocjOPInt;
@Column(name = "baze_podataka")
private int ocjBPInt;
@Column(name = "napredne_baze_podataka")
private int ocjNBPInt;
错误:HHH000388:不成功:创建表studenti.ocjene_studenata(默认情况下生成的ID整数为identity、godina_studiranja integer、ime_studenta varchar(255),baze_podataka整数,matematika整数,napredne_baze_podataka整数,objektno_orijentirano_Programmiranje_2整数,objektno_orijentirano_Programmiranje_1整数,osnove_Programmiranja整数,Programmiranje整数,ocjena_成熟整数,prezime_studenta varchar(255),prosjek double,主键(ID))
kol 1820147:05:47 PM org.hibernate.tool.hbm2ddl.SchemaUpdate执行
错误:未找到架构“STUDENTI”;SQL语句:
创建表studenti.ocjene_studenata(
默认情况下作为标识生成的ID整数,
godina_studiranja整数,
瓦查尔(255岁),
baze_podataka整数,
matematika整数,
napredne_baze_podataka整数,
objektno_orijentirano_programiranje_2整数,
objektno_orijentirano_programiranje_1整数,
osnove_programiranja整数,
可编程的整数,
ocjena_成熟整数,
prezime_studenta varchar(255),
prosjek double,
主键(ID)
) [90079-171]
kol 1820147:05:47 PM org.hibernate.tool.hbm2ddl.SchemaUpdate执行
信息:HH000232:架构更新完成
kol 1820147:05:47 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper日志异常
警告:SQL错误:90079,SQLState:90079
kol 1820147:05:47 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper日志异常
错误:未找到架构“STUDENTI”;SQL语句:
插入studenti.ocjene_studenata(ID、godina_studinanja、ime_studenta、baze_podataka、matematika、napredne_baze_podataka、objektno_orijentirano_programmarinja_2、objektno_orijentirano_programmarinja_1、osnove_programmarinja、programmarinja、ocjena_、ocjena_成熟、prezime_studena、prosjek)值(空、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
线程“AWT-EventQueue-0”javax.persistence.PersistenceException:org.hibernate.Exception.genericjdbception:未找到架构“STUDENTI”;SQL语句:
插入studenti.ocjene_studenata(ID、godina_studinanja、ime_studenta、baze_podataka、matematika、napredne_baze_podataka、objektno_orijentirano_programmarinja_2、objektno_orijentirano_programmarinja_1、osnove_programmarinja、programmarinja、ocjena_、ocjena_成熟、prezime_studena、prosjek)值(空、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
位于org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1387)
位于org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1310)
位于org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1316)
位于org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:881)
位于hr.tvz.programiranje.baza.DatabaseUtils.spremiRezultate(DatabaseUtils.java:18)
在hr.tvz.programiranje.java.swing.glavni.GlavniOkvir$3.actionPerformed(GlavniOkvir.java:177)
在javax.swing.AbstractButton.fireActionPerformed(未知源)
位于javax.swing.AbstractButton$Handler.actionPerformed(未知源)
在javax.swing.DefaultButtonModel.fireActionPerformed(未知源)
位于javax.swing.DefaultButtonModel.setPressed(未知源)
位于javax.swing.plaf.basic.BasicButtonListener.mouseReleased(未知源代码)
位于java.awt.Component.ProcessMouseeEvent(未知源)
位于javax.swing.JComponent.ProcessMouseeEvent(未知源)
位于java.awt.Component.processEvent(未知源)
位于java.awt.Container.processEvent(未知源)
位于java.awt.Component.dispatchEventImpl(未知源)
位于java.awt.Container.dispatchEventImpl(未知源)
位于java.awt.Component.dispatchEvent(未知源)
位于java.awt.LightweightDispatcher.RetargetMouseeEvent(未知源)
位于java.awt.LightweightDispatcher.ProcessMouseeEvent(未知源)
位于java.awt.LightweightDispatcher.dispatchEvent(未知源)
位于java.awt.Container.dispatchEventImpl(未知源)
位于java.awt.Window.dispatchEventImpl(未知源)
位于java.awt.Component.dispatchEvent(未知源)
位于java.awt.EventQueue.dispatchEventImpl(未知源)
位于java.awt.EventQueue.access$200(未知源)
在java.awt.EventQueue$3.run处(未知源)
在java.awt.EventQueue$3.run处(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)
在java.awt.EventQueue$4.run处(未知源)
在java.awt.EventQueue$4.run处(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知源)
位于java.awt.EventQueue.dispatchEvent(未知源)
位于java.awt.EventDispatchThread.pumpOneEventForFilters(未知源)
位于java.awt.EventDispatchThread.pumpEventsForFilter(未知源)
位于java.awt.EventDispatchThread.pumpEventsForHierarchy(未知源)
位于java.awt.EventDispatchThread.pumpEvents(未知源)
位于java.awt.EventDispatchThread.pumpEvents(未知源)
位于java.awt.EventDispatchThread.run(未知源)
原因:org.hibernate.exception.genericjdbception:未找到架构“STUDENTI”;SQL语句:
插入studenti.ocjene_studenata(ID、godina_studiranja、ime_studenta、baze_podataka、matematika、napredne_baze_podataka、ob