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
相关文档:
1 :普通SQL语句可以用Exec执行
例: Select * from tableName
Exec('select * from tableName')
& ......
最近在用sqlcmd工具进行数据备份,今天在换到sql2000时突然不能用。原来2000是没有这个工具的:
sql2005:
sqlcmd -S 服务器名或服务器地址 -U 用户 -P 密码 -i "引用的sql语句文件"
sql2000:可以用osql代替,功能一样
osql -S 服务器名或服务器地址 -U 用户 -P 密码 -i "引用的sql语句文件" ......
准备将一个excel表导入SQL Server2005中发生了下图的错误:
重启SQL Server2005还是出现上图的错误,解决方法(如下图):
在SQL Server Configuration Manager中将SSIS即SQL Server Integration Services的属性中的内置账户改为“本地系统”,重启服务即可导入excel了。 ......
1、查看当前数据库的状态
SELECT
DATABASEPROPERTY
('pubs'
,'IsFulltextEnabled'
)
2、打开FullText功能
sp_fulltext_databse
'enable'
关闭此功能
& ......