zoukankan      html  css  js  c++  java
  • hibernate

    -- select  后面没有加别名

    Encountered a duplicated sql alias [id] during auto-discovery of a native-sql query

    -- 看看数据库是否没有这个column

    could not extract ResultSet

    =====================================================================================================

    session.createQuery(queryStr).list();  //hql
    session.createSQLQuery(queryStr).list();  //普通sql

    ========================================================================

    hibernate 左连接:

    @Test
        public void testLetfJion() {
            Session session = sessionFactory.getCurrentSession();
            session.beginTransaction();
            String queryStr = "select stu from com.bjsxt.hibernate.Student as stu left join com.bjsxt.hibernate.Teacher as te on stu.id = te.id";
            session.createQuery(queryStr).list();
            session.getTransaction().commit();
        }

    报错:java.lang.IllegalStateException: DOT node with no left-hand-side!

    正确写法:

        @Test
        public void testLetfJion() {
            Session session = sessionFactory.getCurrentSession();
            session.beginTransaction();
            String queryStr = "select stu from com.bjsxt.hibernate.Student as stu ,com.bjsxt.hibernate.Teacher as te where stu.id = te.id";
            session.createQuery(queryStr).list();
            session.getTransaction().commit();
        }

    ============================================================================================

    IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况。

  • 相关阅读:
    ClickHouse之访问权限控制
    ClickHouse之集群搭建以及数据复制
    ClickHouse之简单性能测试
    ClickHouse之初步认识
    从完整备份恢复单个innodb表
    MHA快速搭建
    MySQL 5.7最新版本的2个bug
    Greenplum各种Tips(不定时更新)
    MySQL 5.7贴心参数之binlog_row_image
    TCP窗口机制与流量控制
  • 原文地址:https://www.cnblogs.com/king-/p/6594433.html
Copyright © 2011-2022 走看看