优化MySchool数据库(存储过程)
---- 数据库中,用于存储“业务逻辑”的技术!(T-SQL代码当做数据一样保存到数据可)
语法 :
【if exists(select * from sysobjects where name = '存储过程名')】 ---- 一般语法
if object_id('存储过程名') is not null
drop procedure 存储过程名
go
create procedure 存储过程名
as
---- T-SQL逻辑
go
-----------------------------------------------------------------------------------------------------
create procedure 存储过程名 ---- 完整的语法
(
@id int = 10, --- 带有默认值的输入参数
@name varchar(20), ---输入参数
@passWord varchar(50) output --- 输出参数
)
as
select .... ----输出结果集
return -1;--只能是整数(返回处理结果)
go
【返回结果的方式】---- 输出参数、select结果集、return(整数)
输出参数方式:较适用于返回信息较少的情况
select结果集:适用数据查询需求(存储过程可以同时返回多个结果集)
return方式:较适用于没有数据返回操作(数据业务调整、更新)
存储过程的调用语法
--- 1、省略调用(按位赋值)
declare @reslut varchar(50)
exec up_GradeSubject 'S2',@reslut output
select @reslut
--- 2、完整调用(为每一值,指定参数名称)
declare @reslut varchar(50)
exec up_GradeSubject @GradeName='S2',@subjectNumber =@reslut output
select @reslut
【注意】
方式一:简洁,但是变量值必须一一对应,不允许交换次序
方式二:繁琐一些,但准确的指明每个参数赋值,赋值顺序可以任意交换
当方式一,需要给参数赋予默认值时,采用default关键字填充。如果用方式二使用默认值,只需不对该参数赋值即可
EXEC--- 将“字符串”,当做一个SQL命令来处理
declare @sql varchar(50)
set @sql = 'select * from student'
exec (@sql)
优化MySchool数据库(存储过程)的更多相关文章
- 优化MySchool数据库设计之【巅峰对决】
优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...
- 优化MySchool数据库(二)
优化School数据库(TSQL建库建表建约束) 使用T_sql代码建库.建表.建约束: 建库: Create database HotelManagerSystem on ( ---- 数据文件-- ...
- 优化MySchool数据库(一)
<优化MyShcool数据库>:能够的独立的分析|设计|创建|运营|你的独立的数据库系统 设计--->实现--->TSQL--->查询优化---->性能优化技术-- ...
- 优化MySchool数据库设计总结
数据库的设计 一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗 ...
- 优化MySchool数据库设计
第一章 数据库的设计 1.E-R图中: 矩形:实体 椭圆:属性 菱形:关系 直线:连接实体,属性和关系 2.映射基数 一对多 多对一 多对多 3.范式: 第一范式:确保每列的原子性 第二范式:确保表中 ...
- 优化MySchool数据库(事务、视图、索引)
事务.视图.索引: 事务:当生活逻辑中的“一个步骤”,需要使用多条SQL去完成时,必须使用事务来确保其“完整性“. 视图:简化数据库结构,方便你编写SQL语句(简化SQL语句的编写) 索引:提高“数据 ...
- accp7.0优化MySchool数据库设计内测笔试题总结
1) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...
- S2--《优化MySchool数据库设计》总结
第一章 数据库的设计 1.1 数据库设计 数据库中创建的数据库结构的种类,以及在数据实体之间建立的复杂关系是决定数据库系统效率的重要因素. 糟糕的数据库设计表现在以下两个方面: *效率低下 * ...
- 优化MySchool数据库(四)
关于“无法附件数据库”过程的遇到的问题: 1.数据文件本身,具有访问权限的限制 ---- 选中 数据库文件所在的文件夹---->右键菜单(属性)----> 安全 --->User用户 ...
随机推荐
- 【Swift学习】Swift编程之旅---析构方法(十九)
在一个类的实例内存被释放之前,析构方法被立即调用.使用deinit关键字来声明析构方法,类似于构造方法用init来声明.析构方法只适用于类类型. 析构方法原理 Swift会自动释放不再需要的实例以 ...
- 功能更新到 Windows 10 企业版, 版本 1607
功能更新到 Windows 10 企业版, 版本 1607
- asp.net MVC4的执行流程
MVC在底层和传统的asp.net是一致的,在底层之上,相关流程如下: 1)Global.asax里,MvcApplication对象的Application_Start()事件中,调用 RouteC ...
- C#单纯的字母数字ASCII码转换
字母转换成数字 byte[] array = new byte[1]; //定义一组数组array array = System.Text.Encoding.ASCII.Ge ...
- python问题记录
今天才python群里看到一个问题 python2.7: L = [x for x in 'hello'] print L print x python3.4: L = [ x for x in 'h ...
- Scalaz(5)- typeclass:my typeclass scalaz style-demo
我们在上一篇讨论中介绍了一些基本的由scalaz提供的typeclass.这些基本typeclass主要的作用是通过操作符来保证类型安全,也就是在前期编译时就由compiler来发现错误.在这篇讨论中 ...
- 转载java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.spinner/com.example.spinner.MainActivity}: java.lang.NullPointerException
今天学习Android开发突然遇到了这个问题,查阅了很多资料,并且对集中原因进行了分析. 错误信息字符串:java.lang.RuntimeException: Unable to start act ...
- selenium webdriver自动化对日期控件的处理
用JS去掉日期输入框的readOnly属性. 代码如下: ----------------------------------------------------------------------- ...
- linux下查找java进程占用CPU过高原因
1. 查找进程 top查看进程占用资源情况 明显看出java的两个进程22714,12406占用过高cpu. 2.查找线程 使用top -H -p <pid>查看线程占用情况 3. ...
- Linux学习笔记18--Linux系统服务基础
服务(Service):运行在操作系统后台的一个或多个程序,为用户或系统提供某项特定的服务. 服务通常是不中断运行的,随时接收请求,提供某项服务.例如:http网页服务由诸如nginx.apach ...