很多人接触数据库,从数据库表中查记录最早应该是利用SQL语句字符串,这也是我们开始操作数据库表使用的SQL语言,那时也看过存储过程,只是不理解存储过程什么意思,现在也只是简单应用,了解一点点而已。

形象一些,存储过程就是完成一个特定功能的东西,和函数差不多,是一段程序代码的集合。

下面是通过在一个系统中的具体应用来帮助学习、掌握、理解存储过程。同时学习也是一步一步逐渐深入的学习,从了解、认识、理解、应用的一个过程,学习的知识在于应用,也只有会灵活应用了,才是自己的。

存储过程概念:

         存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
         创建语句:
          
        

1  例如:建立一个存储过程,从“新闻类表”category、“新闻表”news中查询最新的新闻若干条新闻(上一篇博客中已有这两个表的描述)

上面代码是通过外键关联从category 、news两个表中查询最新的新闻,n 、c 分别为表起的别名(alias)。

红色框表示内连接,此外还有交叉联接、外联接(左向外联接,右向外联接,完整外联接)等类型,常用的是内连接,

内联接的格式为:

数据表1  inner join  数据表2  on  联接表达式

指定返回两个表中所有匹配的行。

2  建立一个根据评论数,查询热点新闻的存储过程。

想要应用存储过程本质上还是要熟练运用SQL查询语句,语法如下:

方框中的是不经常用但很重要的查询关键字,其含义如下:

        ALL:指明查询结果中可以显示值相同的列ALL是系统默认的
        DISTINCT:指明查询结果中如果有值相同的列,则只显示其中的一列。对DISTINCT选项来说,Null 值被认为是相同的值
       TOP n  [PERCENT]:指定返回查询结果的前n行数据,如果PERCENT关键字指定的话,则返回查询结果的前百分之n行数据。

group_by_expression:指明分组条件group_by_expression通常是一个列名,但不能是列的别名。

ORDERBY子句指定查询结果的排序方式。

      ASC(ascending):指明查询结果按升序排列这是系统默认值
      DESC(descending):指明查询结果按降序排列

在大点的数据库系统中,存储过程具有很重要的作用。就本质而言它是SQL语句和流程控制语句的集合。存储过程在运算时生成执行方式,所以以后对其再运行时其执行速度很快。

我们可以多多运用,尤其是在Web-Server之间执行时,速度会快一些。

什么时候使用存储过程比较合适?

转载于:https://www.cnblogs.com/lilongsheng1125/archive/2012/07/19/4978643.html

牛腩新闻发布系统(2)使用存储过程查询表相关推荐

  1. 牛腩新闻发布系统 (三)走进存储过程

    什么是储存过程 我第一次运用存储过程是在机房重构时,在进行组合查询设计时我需要通过多条sql语句查找信息,字段和属性,我把sql语句写在了数据库的"存储过程"中,而在程序中只需要调 ...

  2. 牛腩新闻发布系统——触发器使用

    触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行.触发器经常 ...

  3. 【牛腩新闻发布系统】开发前的准备01

    前言: 牛腩新闻发布系统已经完成了很久了,在完成的过程中,一步步按照视频的步骤在走,中间探索了一下注释部分是怎么出来的.整个学习过程紧凑而且有序,中间也拖沓了两周有开始接着完成,接下来是整个过程中一些 ...

  4. 牛腩新闻发布系统——后台前台整合技术

    在牛腩新闻发布系统中用到了一些技术我就来总结下 一.鼠标超链接设置 一开始就用到了鼠标超链接的设置.尾部样式的设置,这个东西每个网站都要用到非常长用所以可以写下来积累积累. 举个例子 如图:鼠标没有移 ...

  5. 【牛腩新闻发布系统之handler】

    前言: 敲着牛腩已经有很长时间了,一路走来,没有顺顺利利的!正是因为这样,我才感觉自己有了收获!也正是错误的调试,对牛腩新闻发布系统更加了解了!毕竟,错误的调试是一个经历并成长的过程,今天,主要来总结 ...

  6. 牛腩新闻发布系统——制作母板页

    以牛腩新闻发布系统为例,复述Web开发母版页制作: 单击右键--新建项--选择母版页.命名--确定. 这个母版页中包含三部分不变的内容:top(图片).Search(搜索).footer(底部版权) ...

  7. 【Dongle】【Web】牛腩新闻发布系统之中篇

    相对于前篇总结来说,中篇来得晚了很多,大概都一个多月过去了由于牛腩视频已经看完,并跟着敲了下来,故而在这里,我就总结一下视频后40讲的大概知识点. 在前期框架搭建好之后,中期也就是针对每个页面设计符合 ...

  8. 牛腩新闻发布系统—如何发布

    [前言] 牛腩项目的学习已经接近尾声了,到了该发布的时候了,当时看完牛腩老师的发布系统,并没有很懂,就想着先往下走,当看了Asp.Net第一集的时候,就突然明白怎么回事了,其实也没有那么难. [内容] ...

  9. 【牛腩新闻发布系统】系统发布06

    前言: BS系统的发布可以通过VS自带的工具实现,也可以通过windows系统自带的IIS进行发布,我用的第二种方法发布的. 使用的方法: https://blog.csdn.net/j1553341 ...

最新文章

  1. 微信小程序设置云函数使用的环境
  2. 亚马逊封店潮之后,跨境电商卖家该如何调整来拓展新的市场?
  3. KMP的c语言实现和学习
  4. mybatis与mysql的优点_MyBatis的优缺点以及特点
  5. Python-流程控制之循环
  6. pandas之数据结构
  7. 开放防火墙/26ip段_在5个不同国家/地区采用开放硬件设计的电子产品
  8. typescript map转对象_TypeScript 快速上手及学习笔记 - JoeYoung
  9. Openstack的用户登录流程
  10. promise重新认识
  11. Atitit velocity 模板引擎使用法 目录 1.1. 1.4 Context 1 1.1.1. 1.4.1 Context 基本概念 1 1.2. .3不同模式下使用velocity 1
  12. java反射机制(4)动态代理初探
  13. DbVisualizer配置神通数据库驱动
  14. [异步图书].Python机器学习:预测分析核心算法.pdf
  15. 卸载腾讯位置服务器,完整优雅的卸载腾讯云云服务器安全监控组件
  16. Python刷博客简易版
  17. mac的 tr命令_tr命令 - Holy_Shit - 博客园
  18. 情人节c语言程序,情人节c语言代码.doc
  19. ttkefu如何修改手机聊天窗口的背景颜色?
  20. PMP考试的5A好考吗?

热门文章

  1. 洛谷3857 [TJOI2008]彩灯
  2. 最全mysql的复制和读写分离
  3. 关于offsetTop offsetHeight clientHeight scrollHeight scrollTop的区别研究
  4. C#的变迁史 - C# 2.0篇
  5. 通过maven创建自己的archetype
  6. 在 Delphi 下使用 DirectSound (9): 效果器初步及 IDirectSoundFXGargle8 效果器
  7. 如何实现拼音与汉字的互相转换
  8. 云原生产业联盟成立 蚂蚁金服当选为理事单位
  9. MDEV Primer
  10. 谷歌浏览器跨域报错解决办法