Sql Server Proc 先看看简单吧
CREATE PRoc [名字]
{
@参数 数据类型,
@参数 数据类型
OUTPUT[输入]
}
AS
begin
select INSERT UPDATE (SQL)
end --基本语句快
--以上是语句库
--先看看不带参数的吧 他跟方法一样 可以带参数也可以不带参数(当然我没用过几次不带参数的)
--获取一个表吧这种都感觉像视图了
IF(SELECT * FROM sysobjects WHERE Name ='proc_table')
DROP PROC proc_table
GO
CREATE PROC proc_table
AS
SELECT * FROM Users WHERE S_ID=''
GO
EXEC proc_table
--带参数的吧--就看看登录的SQL吧
IF(SELECT * FROM sysobjects WHERE Name ='P_LOG')
DROP PROC P_LOG
GO
CREATE PROC P_LOG
@acctount VARCHAR(50),
@accountpwd VARCHAR(50)
AS
BEGIN
SELECT COUNT(*) FROM Users WHERE U_LoginName=@acctount AND U_Password=@accountpwd;
END EXEC P_LOG'',''
--C#orjava 调了之后直接判断有没有值即可
--这是返回单行单列。需要用返回单行单列的放方法去接收
--再看看输出参数的存储过程
在JAVA中我们需要调用带参的方法时需要传参给形参,列入比较两个大小的方法 int compare( int first ,int second),比较10 和20的大小,则调用形式:tempcompare(10,20),方法compare返回值赋值给变量为tmp.
存储过程中也有与很像是,有两种类型的参数的参数
~输入参数:调用是像存储过程传实参,用来向PROC传值
~输出参数: 同JAVA 如果希望参数可以带出方法,则可以使用输出参数值带出方法,则可以输出参数,通过定义参数 "OUTPUT"标记 ,表明该参数是输出参数 ,执行存储过程后吧 返回值存放在输出中-
可以给其他T-SQL 语句访问,
CREATE proc [dbo].[P_GetConsumeOrderPaged]
@PageSize int,
@PageIndex int,
@Count int output,
@MC_CradID varchar(20),
@MC_Mobile varchar(20),
@BeginDate varchar(20),
@EndDate varchar(20),
@CO_OrderType int,
@S_ID int
as
begin
select top(@PageSize) * from ConsumeOrders M inner join MemCards A on M.MC_ID=A.MC_ID inner join CategoryItems B on M.CO_OrderType=B.CI_ID
where A.S_ID=@S_ID and M.CO_ID not in(
select top(@PageSize*(@PageIndex-1)) M.CO_ID from ConsumeOrders M inner join MemCards A on M.MC_ID=A.MC_ID inner join CategoryItems B on M.CO_OrderType=B.CI_ID
and A.S_ID=@S_ID and B.C_Category='CO_OrderType' and ((A.MC_CardID=@MC_CradID or A.MC_Mobile=@MC_Mobile) or (@MC_CradID='' and @MC_Mobile='')) and ((@BeginDate='' or @EndDate='') or (M.CO_CreateTime between @BeginDate and @EndDate)) and ((@CO_OrderType=0) or (M.CO_OrderType=@CO_OrderType))
)
and B.C_Category='CO_OrderType' and ((A.MC_CardID=@MC_CradID or A.MC_Mobile=@MC_Mobile) or (@MC_CradID='' and @MC_Mobile='')) and ((@BeginDate='' or @EndDate='') or (M.CO_CreateTime between @BeginDate and @EndDate)) and ((@CO_OrderType=0) or (M.CO_OrderType=@CO_OrderType))
select @Count=COUNT(*) from ConsumeOrders M inner join MemCards A on M.MC_ID=A.MC_ID inner join CategoryItems B on M.CO_OrderType=B.CI_ID where A.S_ID=@S_ID and B.C_Category='CO_OrderType' and ((A.MC_CardID=@MC_CradID or A.MC_Mobile=@MC_Mobile) or (@MC_CradID='' and @MC_Mobile='')) and ((@BeginDate='' or @EndDate='') or (M.CO_CreateTime between @BeginDate and @EndDate)) and ((@CO_OrderType=0) or (M.CO_OrderType=@CO_OrderType))
end
GO
-- 创建参数带有默认值的PROC
在调PROC时,有些参数变化很少,这时,可以给这些参数一个默认值,即使调用时不输入值,也会在存储过程中使用默认值,在很大程度上方便调。
IF(SELECT * FROM sysobjects WHERE Name ='proc_insertstu')
DROP PROC proc_insertstu
GO
create pro proc_insertstu
@stuname varchar(20),
@stusex char(2)='男',
@classid int =2
AS
begin
INSERT INTO stuinfoO(StuName,stusexmclassid)
values(@stuname ,@stusex,@classid )
end
go exec proc_insertstu'唐胜'
exec proc_insertstu'‘‘ZHUBAJIE’@CLASSID=1
`调用时可以传值也可以不传
Sql Server Proc 先看看简单吧的更多相关文章
- sql server 公共表达式的简单应用(cte)
一.前言 现在做项目数据访问基本都会选择一种orm框架,它以面向对象的形式屏蔽底层的数据访问形式,让开发人员更集中在业务处理上,而不是和数据库的交互上,帮助我们提高开发效率:例如一些简单的insert ...
- 自动化安装SQL Server+SP就那么简单
随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...
- SQL server 数据库 操作及简单查询
使用SQL Sever语言进行数据库的操作 常用关键字identity 自增长primary key 主键unique 唯一键not null 非空references 外键(引用) 在使用查询操作数 ...
- 动化安装SQL Server+SP就那么简单
随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...
- SQL Server Mobile/Compact Edition 简单介绍
除了SQL Server Express,SQL Server还有个更轻量级的版本:SQL Server Compact Edition,容易让人想起Windows Compact Edition ( ...
- SQL Server 的表数据简单操作(表数据查询)
--表数据查询----数据的基本查询-- --数据简单的查询--select * | 字段名[,字段名2, ...] from 数据表名 [where 条件表达式] 例: use 商品管理数据库 go ...
- 菜鸟级asp.net 与ms sql server数据库打交道的简单总结
using System.Data.SqlClient;using System.Data; 上面是必须的 下面说的都是用存储过程 首先是webconfig里面的连接字符串: <connecti ...
- sql server 备份与恢复系列三 简单恢复模式下的备份与还原
一.概述 前面讲了备份的一些理论知识,这篇开始讲在简单恢复模式下的备份与还原.在简单模式下是不能做日志备份的,发生灾难后,数据库最后一次备份之后做的数据修改将是全部丢失的,所以在生产环境下,数据又很重 ...
- 关于sql server的一种简单用法——在上面写查询语句,即可在下面修改数据
选择数据库中的表,右键单击-->编辑前200行,然后在显示的页面中选择带SQL标志的图标
随机推荐
- 11、python模块的导入
前言:本文主要介绍python模块的导入,包括模块的定义.模块的作用.导入方式以及模块的搜索路径. 一.模块的定义 python模块(module),简单来说就是一个python文件,以.py结尾,文 ...
- CQBZOJ 邮递员(直播剪枝技巧)
题目描述 Mirko在一个山镇找到了一份邮递员的工作.这个镇可以看作一个N*N的矩形.每个区域可能是以下之一:房子K,邮政局P,草地 '.'.每个区域都有一个海拔. 每天早上,Mirko要送信给镇上所 ...
- 基于OpenCV的双目视觉匹配测距系统
刚读研究生的时候,自己导师研究的方向是双目视觉,于是让自己研究OpenCV,折腾了几个月,算法上没啥突破,不过工程上还是折腾出了一个能用的小玩意,基于OpenCV实现了相机的标定.双目视觉图片的矫正. ...
- AI初探
看东西应该记笔记,不然如过眼云烟,如只逛商场,不买东西,不留下带走什么,就是浪费时间,没有收获,仅此开始,定期梳理看过的东西. 人工智能的目的是什么呢? 答:让机器表现得更像人类,甚至在某些技能上超越 ...
- Day10-Python3基础-协程、异步IO、redis缓存、rabbitMQ队列
内容目录: Gevent协程 Select\Poll\Epoll异步IO与事件驱动 Python连接Mysql数据库操作 RabbitMQ队列 Redis\Memcached缓存 Paramiko S ...
- Linux测试环境简单使用教程
0. 本blog 简单说明一下 Linux测试环境尤其是 CentOS测试环境的开发测试使用, 教程可能不会很长, 主要是入门. 0.1 Linux简介: Linux 的历史基本上不用阐述, linu ...
- 云原生 - Why is istio(二)
出处:https://cizixs.com/2018/08/26/what-is-istio 创作不易,在满足创作共用版权协议的基础上可以转载,但请以超链接形式注明出处. 前言 随着微服务架构的流行, ...
- springboot整合elasticJob实战(纯代码开发三种任务类型用法)以及分片系统,事件追踪详解
一 springboot整合 介绍就不多说了,只有这个框架是当当网开源的,支持分布式调度,分布式系统中非常合适(两个服务同时跑不会重复,并且可灵活配置分开分批处理数据,贼方便)! 这里主要还是用到zo ...
- Android教程2020 - RecyclerView获取滑动距离
获取RecyclerView滑动的距离. Android教程2020 - 系列总览 本文链接 前面我们已经用RecyclerView显示一些数据. 本文演示如何获取RecyclerView的滑动距离. ...
- sass css样式:@for循环、样式变量与#{} 变量插值
/* sass 可以用写JS的思想来写CSS代码 * #{} 用来插值,大括号中填写需要插入的变量 * @for 变量 from ...