WEB开发网
开发学院数据库MSSQL Server SQL Server 2008表值类型参数 阅读

SQL Server 2008表值类型参数

 2010-04-28 15:43:59 来源:WEB开发网   
核心提示:使用存储过程中的多个参数插入数据查看并选中 下列代码并点击Execute:USE SQL2008DEMOGOCREATE TABLE dbo.Employee(EmpID int NOT NULL,EmpName nvarchar(100) NOT NULL,EmpEmail nvarchar(100) NOT NUL

使用存储过程中的多个参数插入数据

查看并选中 下列代码并点击Execute:

USE SQL2008DEMO
GO
CREATE TABLE dbo.Employee(
EmpID int NOT NULL,
EmpName nvarchar(100) NOT NULL,
EmpEmail nvarchar(100) NOT NULL)

查看并选中 下列代码并点击Execute:

USE SQL2008Demo
GO
CREATE PROCEDURE NewEmployeeMS(@EmpID int,@EmpName nvarchar(100),@EmpEmail nvarchar(100))
As
BEGIN
INSERT INTO dbo.Employee
values(
@EmpID, @EmpName, @EmpEmail)
END

查看并选中 下列代码并点击Execute:

USE SQL2008Demo
GO
execute NewEmployeeMS 1,'John McLean','JohnMcLean@contoso.com'
execute NewEmployeeMS 2,'Bob Smith','BobSmith@contoso.com'
execute NewEmployeeMS 3,'Ted Connery','TedConnery@contoso.com'

查看并选中 下列代码并点击Execute:

USE SQL2008Demo
select * from dbo.Employee;
GO

注意: 以上解决方案的缺点在于:

1.使用了太多的与服务器的往返行程

2.存储过程需要多次重复执行

3.低效的代码执行

使用本地临时表插入数据

查看并选中 下列代码并点击Execute:

USE SQL2008DEMO
GO
Truncate table dbo.Employee

查看并选中 下列代码并点击Execute:

USE SQL2008Demo
GO
CREATE PROCEDURE NewEmployeeTempTable
As
BEGIN
 INSERT INTO dbo.Employee
 SELECT * FROM #EmployeeTempTable
ENDINSERT INTO dbo.Employee
values(
@EmpID, @EmpName, @EmpEmail)
END

查看并选中 下列代码并点击Execute:

USE SQL2008Demo
GO
CREATE TABLE dbo.#EmployeeTempTable(
EmpID int NOT NULL,
EmpName nvarchar(100) NOT NULL,
EmpEmail nvarchar(100) NOT NULL)
Go

上一页  1 2 3 4  下一页

Tags:SQL Server 类型

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接