@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 .

hibernate session.createSQLQuery(sql); 通过命令删除的更多相关文章

  1. herbnate session.createSQLQuery(sql) 和 session.createQuery(sql)使用

    public class DistributeDao implements Serializable{ private SessionFactory sessionFactory; public Se ...

  2. Hibernate执行原生SQL返回List<Map>类型结果集

    我是学java出身的,web是我主要一块: 在做项目的时候最让人别扭的就是hibernate查询大都是查询出List<T>(T指代对应实体类)类型 如果这时候我用的联合查询,那么返回都就是 ...

  3. hibernate将本地SQL查询结果封装成对象

    hibernate将本地SQL查询结果封装成对象 不知道大家有没有碰过这种情况,迫于很多情况只能用native SQL来查询(如:复杂统计等),然而使用native查询后,结果会被放到object里, ...

  4. hibernate使用原生SQL查询返回结果集的处理

    今天没事的时候,看到公司框架里有一个用原生SQL写的函数,说实在以前自己也干过这事,但好久都没有用,都忘得差不多了,现在基本都是用的hql语句来查询结果.hibernate中使用createSQLQu ...

  5. Hibernate使用原生sql语句

    异常类型1:could not extract resulted --->表名字和类名不一致 异常类型2:could not execute query---->可能是sql语句错: 异常 ...

  6. Hibernate使用原生SQL(转载)

    本文转载,出处如下:http://bhdweb.iteye.com/blog/801084 HQL尽管容易使用,但是在一些复杂的数据操作上功能有限.特别是在实现复杂的报表统计与计算,以及多表连接查询上 ...

  7. Hibernate 的原生 SQL 查询

    Hibernate除了支持HQL查询外,还支持原生SQL查询.         对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取 ...

  8. Hibernate查询之SQL查询,查询结果用new新对象的方式接受,hql查询,通过SQL查询的结果返回到一个实体中,查询不同表中内容,并将查到的不同表中的内容放到List中

     package com.ucap.netcheck.dao.impl; import java.util.ArrayList;import java.util.List; import org. ...

  9. hibernate使用原生SQL查询

    以下是Demo测试Hibernate 原生SQL查询: import java.util.Iterator; import java.util.List; import java.util.Map; ...

随机推荐

  1. jQuery 双击事件(dblclick)

    在jQuery的事件绑定中,执行双击事件(dblclick)时能触发两次单击事件(click).即一个标签元素(如div等),如果元素同时绑定了单击事件(click)和双击事件(dblclick),那 ...

  2. Revit 模态框

    非模态窗口有一个好处,就是可以一直停留在程序之前,然后持续完成操作.但是在Revit二次开发中,非模态窗口也有几个注意事项. 1.需要在文档关闭的时候,把非模态窗口也关闭掉,不然会导致文档关闭,窗口还 ...

  3. Oracle从入门到精通----学习笔记

    书名:<Oracle从入门到精通:视频实战版>秦靖.刘存勇等编著 第4章 SQL基础 1.SQL语言分类 数据定义语言 --- DDL,Data Definition Language 数 ...

  4. 加载配置文件-properties

    Properties jdbcProp = new Properties(); jdbcProp.load(getClass().getResourceAsStream("/jdbc.pro ...

  5. Python3 多线程、多进程

    python中的线程是假线程,不同线程之间的切换是需要耗费资源的,因为需要存储线程的上下文,不断的切换就会耗费资源.. python多线程适合io操作密集型的任务(如socket server 网络并 ...

  6. centos病毒

    #!/bin/bash exec &>/dev/null {echo,ZXhlYyAmPi9kZXYvbnVsbApleHBvcnQgUEFUSD0kUEFUSDovYmluOi9zYm ...

  7. Debian 安装 virtualbox

    首先增加源: echo "deb http://download.virtualbox.org/virtualbox/debian stretch contrib" > /e ...

  8. Java开发中的23种设计模式(转)

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  9. ESP8266 01S WIFI 网络

    ESP8266是一款超低功耗的UART-WiFi 透传模块,拥有业内极富竞争力的封装尺寸和超低能耗技术,专为移动设备和物联网应用设计,可将用户的物理设备连接到Wi-Fi 无线网络上,进行互联网或局域网 ...

  10. C#中将ListView数据导出为excel(转载)

      首先引用excel库,下面我把代码贴出来.                 /// <summary>        /// 将ListView的内容写入Excel表中         ...