Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate Oracle创建表_Oracle_Hibernate_Jdbc - Fatal编程技术网

Hibernate Oracle创建表

Hibernate Oracle创建表,oracle,hibernate,jdbc,Oracle,Hibernate,Jdbc,我在通过hibernate在oracle中创建表时遇到问题。 我得到以下两个错误: Could not execute JDBC batch update 及 这是我的hibernate.cfg.xml 例外情况 看起来您正在Hibernate中创建getter和setter,但我很确定您没有创建表。这只是对Oracle表的引用,该表显然还不存在。因此,错误表或视图不存在 你能发布整个异常吗?日志中有SQL吗?哪个查询失败?SessionFactory SessionFactory=new C

我在通过hibernate在oracle中创建表时遇到问题。 我得到以下两个错误:

Could not execute JDBC batch update

这是我的hibernate.cfg.xml

例外情况


看起来您正在Hibernate中创建getter和setter,但我很确定您没有创建表。这只是对Oracle表的引用,该表显然还不存在。因此,错误表或视图不存在

你能发布整个异常吗?日志中有SQL吗?哪个查询失败?SessionFactory SessionFactory=new Configuration.configure.buildSessionFactory;Session Session=sessionFactory.openSession;事务tx=session.beginTransaction;教师=新教师444,sds,sdfd,dfg;session.saveteacher;tx.commit;session.flush;会议结束;System.out.printlnCalisti;您的模式不太可能被称为SamTest。这更有可能是最糟糕的。如果对Hibernate的功能有疑问,请打开SQL语句日志记录,例如在log4j.properties中添加log4j.logger.org.Hibernate.SQL=DEBUG。
ORA-00942: table or view does not exist
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:ORCL</property>
        <property name="hibernate.connection.username">system</property>
        <property name="hibernate.connection.password">mypass</property>
        <property name="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</property>
        <property name="hibernate.default_schema">SamTest</property>
        <property name="hibernate.connection.pool_size">5</property>
                <property name="show_sql">true</property>
        <property name="hibernate.hbm2ddl.auto">update</property>

        <mapping class="com.sam.Teacher" />

    </session-factory>
</hibernate-configuration>
@Table(schema="SamTest")
public class Teacher {

    @Id
    //@GenericGenerator(name = "generator", strategy = "increment")
    private int teacher_Id;
    @Column
    private int teacher_No;
    @Column
    private String teacher_Name;
    @Column
    private String teacher_Surname;
    @Column
    private String department;


    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public int getTeacher_Id() {
        return teacher_Id;
    }

    public void setTeacher_Id(int teacher_Id) {
        this.teacher_Id = teacher_Id;
    }

    public int getTeacher_No() {
        return teacher_No;
    }

    public void setTeacher_No(int teacher_No) {
        this.teacher_No = teacher_No;
    }

    public String getTeacher_Name() {
        return teacher_Name;
    }

    public void setTeacher_Name(String teacher_Name) {
        this.teacher_Name = teacher_Name;
    }

    public String getTeacher_Surname() {
        return teacher_Surname;
    }

    public void setTeacher_Surname(String teacher_Surname) {
        this.teacher_Surname = teacher_Surname;
    }

    public Teacher() {
    }

    public Teacher(int teacher_No, String teacher_Name, String teacher_Surname, String department) {
        this.teacher_No = teacher_No;
        this.teacher_Name = teacher_Name;
        this.teacher_Surname = teacher_Surname;
        this.department=department;
    }

}
Exception in thread "main" org.hibernate.exception.SQLGrammarException: Could not execute JDBC batch update
    at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:92)
    at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)
    at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
    at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
    at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)
    at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:133)
    at com.sam.RunHiber.main(RunHiber.java:23)
Caused by: java.sql.BatchUpdateException: ORA-00942: table or view does not exist

    at oracle.jdbc.driver.OraclePreparedStatement.executeBatch(OraclePreparedStatement.java:10500)
    at oracle.jdbc.driver.OracleStatementWrapper.executeBatch(OracleStatementWrapper.java:230)
    at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
    at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
    ... 8 more