博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
存储过程基本语法
阅读量:6469 次
发布时间:2019-06-23

本文共 1333 字,大约阅读时间需要 4 分钟。

存储过程可以看作是在数据库中sql语句的集合,通过执行存储过程来达到对数据库的操作,它实现功能和sql语句实现的功能是一样的,但是两者在语法上有很大不同,下面介绍存储过程的用法。

1.  声明变量

在存储过程中声明变量用declare关键字语法如下:

Declare

     {

       @variableName   datatype

}

示例:

Declare   @StudentID  int

说明:

声明一个@ StudentID变量,其类型为int ,当然也可以在代码旁进行注解,其注解后的代码为:

Declare

     {

       @variableName   datatype  --声明一个@ StudentID变量,其类型为int

}

 

2.  打印变量

sqlserver中是实现打印功能,用到的是关键字print,其语法简单的为

   Print  @ variableName  

这样就可以在sqlserver中打印出变量为@ variableName的数值

3.  变量赋值

变量赋值用到的关键字是set,和sql语句中的update语法中的set意思一样,下面就可以以上两点写一个小例子:

   Declare   @ StudentID

   Set @StudentID=(select   studentID   from Student );

   Print @ StudentID

说明:整个小例子意思是从数据库表student中查出字段为 studentID 的值赋给studentID,然后打印出studentID 的值。

在存储过程中不能直接给变量赋值,如果实现给变量赋值,可以这样实现:

Declare   @ StudentID

   S

 

   Print @ StudentID

说明:在存储过程中也是要先声明再使用的原则,这里的set部分就是实现的将1这个字符赋值给@StudentID,那 set @StudentID=(select 1 +1); 是什么意思,想必心中已有答案,下面介绍变量的运算符号

4.  运算符

存储过程的运算符包括,—,*/。和我们常数中用到的符号实现功能一致

举例:

     Set @sum=(select 2+2);--你懂的

     Set @de=(select 8-2);--你懂的

     Set @sum=(select 9+@sum);--自加

5.  常用的一些操作符号

操作符号和常数用的意思都是一样的,比如 

>(大于).

 <(小于).
 = (等于).
 <= (小于等于)
 >= (大于等于).
 != (不等于).
 <>(不等于).
 !< (不小于).
!> (不大于).

不做阐述

6.  语句块

语句块就是固定语法的结构,同时了解代码的所属关系,让存储过程更加清晰明朗,其作用和c#中的{}类似语法是:

Begin   end    其中间部分放入需要执行的代码如下例:

 

Begin

Declare   @ StudentID

   Set @StudentID=(select   1 );

   Print @ StudentID

End

 本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/441256,如需转载请自行联系原作者

你可能感兴趣的文章
紫书 习题11-11 UVa 1644 (并查集)
查看>>
App工程结构搭建:几种常见Android代码架构分析
查看>>
使用openssl进行证书格式转换
查看>>
ZOJ 3777 Problem Arrangement
查看>>
虚拟机类加载机制
查看>>
Callable和Future
查看>>
installshield12如何改变默认安装目录
查看>>
少用数字来作为参数标识含义
查看>>
ScrollView中嵌套ListView
查看>>
JAVA虚拟机05--面试必问之JVM原理
查看>>
Algs4-2.3.1如何切分数组
查看>>
uva 10815 - Andy's First Dictionary(快排、字符串)
查看>>
观察者模式
查看>>
SQL性能优化:如何定位网络性能问题
查看>>
在properties.xml中定义变量,在application.xml中取值问题
查看>>
js 数组
查看>>
Linux scp命令详解
查看>>
struct和typedef struct
查看>>
cell reuse & disposebag
查看>>
【故障处理】ORA-12545: Connect failed because target host or object does not exist
查看>>