平常工作中的SQL语句使用总结,快来瞧瞧吧

  • 时间:2018-12-21 23:10 作者:coder分享 来源:coder分享 阅读:731
  • 扫一扫,手机访问
摘要:前言因为之前是做Java开发的,所以对数据库部分知识的掌握也是必需的,在做开发的时候需要自己写SQL语句,这里就总结一下自己在平常工作中遇到的少量关于SQL语句的问题,希望对大家有所帮助。SQLUpdate语句update语句会一次性升级所有满足条件的记录,所以可能会有多行记录受到影响使用updat

前言

因为之前是做Java开发的,所以对数据库部分知识的掌握也是必需的,在做开发的时候需要自己写SQL语句,这里就总结一下自己在平常工作中遇到的少量关于SQL语句的问题,希望对大家有所帮助。

平常工作中的SQL语句使用总结,快来瞧瞧吧

SQL

Update语句

  • update语句会一次性升级所有满足条件的记录,所以可能会有多行记录受到影响

  • 使用update语句升级多列时,使用“,”(逗号)分隔,而不是用and,例如

平常工作中的SQL语句使用总结,快来瞧瞧吧

update语句

HQL语句

假如使用过Hibernate的话,应该知道HQL语句,它是一种面向对象的SQL语句。

假如在HQL语句中使用了多个表的话,则返回的List结果中,每一个元素都是由多个表单独构成的。例如以下的SQL语句

平常工作中的SQL语句使用总结,快来瞧瞧吧

hql语句

在上述的SQL语句中涉及到了两个表,在返回的查询结果中,每个元素都是数组的形式,数组中的元从来自于不同的表,可以通过索引[0],[1]来访问具体值,调试过程可以看出List中包含的内容。

平常工作中的SQL语句使用总结,快来瞧瞧吧

调试过程

删除表数据而不删除表

假如只想删除表中的数据,而不想删除表的结构,可以有两种方式:

  • truncate

平常工作中的SQL语句使用总结,快来瞧瞧吧

truncate

  • delete

平常工作中的SQL语句使用总结,快来瞧瞧吧

delete

truncate相比于delete命令,在执行速度上会更快,由于truncate只记录整个数据页的释放,而delete会记录每条记录的删除操作。

假如有rollback命令,delete语句会回滚,而truncate语句不会回滚,在使用上truncate语句要更小心。

在Java中使用复杂的SQL语句

有的时候我们会遇到这样一种情况,在SQL语句的命令行或者者可视化界面中,SQL语句是可以执行的,而在Java的程序中执行却会报错。

我们看个具体的例子,有这样一段SQL语句

平常工作中的SQL语句使用总结,快来瞧瞧吧

SQL

这段SQL语句在navicate for mysql中是可以正常执行的,但是假如利用Hibernate的query.list()方法查询时却会报错。

这是由于在SQL语句中没有使用别名,m.`name`和p.`name`会出现重复的字段名。而在navicate中会自动重新命名,所以不会出错。

处理方法如下:

平常工作中的SQL语句使用总结,快来瞧瞧吧

修改后的SQL语句

总结

今天这篇文章简单的总结了下平常工作中SQL语句的使用经验,你学会了吗?

  • 全部评论(0)
最新发布的资讯信息
【系统环境|】2FA验证器 验证码如何登录(2024-04-01 20:18)
【系统环境|】怎么做才能建设好外贸网站?(2023-12-20 10:05)
【系统环境|数据库】 潮玩宇宙游戏道具收集方法(2023-12-12 16:13)
【系统环境|】遥遥领先!青否数字人直播系统5.0发布,支持真人接管实时驱动!(2023-10-12 17:31)
【系统环境|服务器应用】克隆自己的数字人形象需要几步?(2023-09-20 17:13)
【系统环境|】Tiktok登录教程(2023-02-13 14:17)
【系统环境|】ZORRO佐罗软件安装教程及一键新机使用方法详细简介(2023-02-10 21:56)
【系统环境|】阿里云 centos 云盘扩容命令(2023-01-10 16:35)
【系统环境|】补单系统搭建补单源码搭建(2022-05-18 11:35)
【系统环境|服务器应用】高端显卡再度登上热搜,竟然是因为“断崖式”的降价(2022-04-12 19:47)
手机二维码手机访问领取大礼包
返回顶部