存储过程基本语法

简介:

存储过程可以看作是在数据库中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

   Set @StudentID=(select   1 );

 

   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,如需转载请自行联系原作者

相关文章
|
6月前
|
存储 机器学习/深度学习 SQL
SQLSERVER存储过程语法详解
SQLSERVER存储过程语法详解
394 0
|
6月前
|
存储 SQL 关系型数据库
MySQL数据库——存储过程-介绍以及基本语法(特点、创建、调用、查看、删除、示例)
MySQL数据库——存储过程-介绍以及基本语法(特点、创建、调用、查看、删除、示例)
164 0
|
存储 SQL Oracle
Oracle存储过程~基本语法
Oracle存储过程~基本语法
|
SQL 存储 关系型数据库
|
存储
存储过程的语法讲解
在上一篇文章:别再说不知道什么是存储过程和存储函数了中简单的介绍了存储过程和存储函数以及其使用。其实存储过程是可以进行编程的,所以可以和其他的编程语言一样使用变量、表达式以及控制结构进行编程,从而实现一些复杂和有用的功能。
251 0
存储过程的语法讲解
|
存储 Oracle 关系型数据库
Oracle存储过程迁移ODPS-03(专有云):ODPS1.0支持exists语法
专有云目前还有不少ODPS1.0版本,主要是应对V3之前的平台版本。这个版本的ODPS不支持exists语法,如何换种写法实现。
3022 0
|
SQL 存储 关系型数据库
|
存储 Oracle 关系型数据库