zoukankan      html  css  js  c++  java
  • hibernate session.createSQLQuery(sql); 通过命令删除

    @Override
        public boolean deleteBySql(String sql) {
            Session session = getSession();
            @SuppressWarnings("unchecked")
        //    Transaction tx = session.beginTransaction();
             Query query = session.createSQLQuery(sql);
            query.executeUpdate();
          //  tx.commit();
         //   session.close();
            return true;
        }

    网上很多先通过查询id 再删除

    和删除对象的方式.

    麻烦,我就直接用命令删除吧

     session.createSQLQuery(sql); 长的差不多的还有一个命令 session.createQuery  

    两者的区别:
    Query createQuery ( String queryString)
    创建一个查询字符串中给定的HQL 查询新的实例。
    参数:HQL查询
    返回值:Query查询
    抛出异常:HibernateException
    
    SQLQuery createSQLQuery ( String queryString)
    创建一个新的查询字符串给定的SQL实例SQLQuery的。
    参数:SQL查询
    返回值:SQLQuery
    抛出异常:HibernateException
    
    简单来说,createQuery使用hql语句进行查询,以Hibernate生成的Bean为对象,并将对象装入List中返回。
    createSQLQuery使用sql语句进行查询,是以对象数组形式返回。
    --------------------- 
    作者:wangshuang1631 
    来源:CSDN 
    原文:https://blog.csdn.net/wangshuang1631/article/details/52526594 
    版权声明:本文为博主原创文章,转载请附上博文链接!

     报错1:

    Unknown column '张三' in 'where clause'

    这个问题是你的SQL语句问题,字符串类型的数据需要加上单引号

    string sql = "select * from test where name = '"+username+"';

    最终结果如果删除如果数据库存在输出的值则返回删除了多少条数据.

    如果数据库不存在要删除的值返回则为0 .

  • 相关阅读:
    深度学习python的配置(Windows)
    D02-R语言基础学习
    D01-R语言基础学习
    D17——C语言基础学PYTHON
    D16——C语言基础学PYTHON
    D15——C语言基础学PYTHON
    python packaging
    D14——C语言基础学PYTHON
    D13——C语言基础学PYTHON
    python-----多进程笔记
  • 原文地址:https://www.cnblogs.com/zuochanzi/p/9864187.html
Copyright © 2011-2022 走看看