我正在学习如何编写存储过程。我有点得到它,但我没有。 我知道它会像这样......
CREATE PROCEDURE|PROC <sproc name>
[<parameter name> [schema.]<data type> [VARYING] [=<default value>] [OUT[PUT]]
[READONLY]
[,<parameter name> [schema.]<data type> [VARYING] [=<deafult value>] [OUT[PUT]]
[READONLY]
[,...
...
]]
[WITH
RECOMPILE|ENCRYPTION|[EXECUTE AS{ CALLER|SELF|OWNER|<'user name'>}]
[FOR REPLICATION]
AS
<code> | EXTERNAL NAME <assembly name>.<assembly class>.<method>
所以我坚持下去并且我试图理解这是..编写一个存储过程,接受一个区域ID,区域描述和区域ID,并将它们作为新行插入Northwind的Territories表中。
好的,所以我知道我可以做这样的事情我相信:
USE Northwind
GO
CREATE PRO spTerritory
AS
SELECT Territory ID,Territory Description,RegionID
From dbo.Territories
但后来我错了。但我不知道在哪里插入作为表中的新行。我知道我会在这条线上使用类似@new或@rows的东西。如果有人可以帮助我了解谁做了一个蠢货我会很高兴。
答案 0 :(得分:10)
您正在寻找INSERT声明。
CREATE PROCEDURE InsertTerritory (
@territoryId int
,@territoryDescription nvarchar(200)
,@regionId int)
AS
BEGIN
INSERT INTO Territories (Id, [Description], RegionId)
VALUES (@territoryId, @territoryDescription, @regionId)
END
GO
答案 1 :(得分:2)
答案 2 :(得分:0)
USE [SchoolData] 开始
用于获取所有数据
将ANSI_NULLS设置为ON 走 将QUOTED_IDENTIFIER设置为ON 走 创建过程[dbo]。[GetDepartment] 如 从部门中选择ID,名称,说明,Is IsDeleted = 0