SQL SERVER 2008 表值参数
/*
SQL SERVER 2008 表值参数
SQL SERVER 引入了抗议用来将行集传入到存储过程和用户定义函数的表值参数.
这个功能可以使存储过程和函数具有封装多个行集的功能,而不是必须一行一行地调
数据修改过程和穿件多个输入参数来生硬的转化为多行.
我们在应用中经常用到的插入时把代码封装到存储过程中。
*/
CREATE DATABASE TESTDB
USE TESTDB
GO
CREATE TABLE USERINFO(USERID INT,USERNAME NVARCHAR(50))
GO
CREATE PROC USP_INSERT_USERINFO
@ID INT,
@NAME NVARCHAR(50)
AS
INSERT USERINFO
VALUES(@ID,@NAME)
GO
/*
上面的环境建立好后,如果我们需要向表中插入行数,就需要调用次这个
存储过程。在大多数情况下这样的情况是可以接受的,如果你经常需要一次插入多
条。那么就可以用中新增的表值参数类型,可以将要插入的数据传入到表值参
数中,然后通过表值参数一次性插入的表中。
下面演示该参数类型。
*/
--要使用表值参数,首先要定义用户定义表数据类型。
CREATE TYPE T_USERINFO AS TABLE
(USERID INT,
USERNAME NVARCHAR(50)
)
GO
--下面可以对上面的过程USP_INSERT_USERINFO进行修改。
CREATE PROC USP_INSERT_USERINFO_NEW
@USERINFO T_USERINFO READONLY --必须使用READONLY 选项声明表值参数
AS
INSERT USERINFO
&nbs
相关文档:
select
WorksheetID,worker,WorkDate,merchantName ,merchantNo ,manager
, case when insCount>0 then '新装' else '' end InsStr
,case when repCount>0 then '换装' else '' end RepStr
,case when UnInsCount>0 then '撤机' else '' end UnInsStr
,case when FaultCount>0 then '故障处理' els ......
排名函数是SQL Server2005新加的功能。在SQL Server2005中有如下四个排名函数:
1. row_number
2. rank
3. dense_rank
4. ntile
一、row_number
row_number函数的用途是非常广泛,这个函数的功能是为查询出来的每一行记录生成一个序号。row_number函数的用法如下面的SQL语句所示:
sel ......
/*
功能:利用函数创建流水号如:
fx201005260001,
fx201005260002,
fx201005270001
作者:陈永建
创建时间:2010-05-26
*/
use master
go
i ......
随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序 ......