我正在使用SQL Server。我想创建一个存储过程来截断我的3个表(dbo.table1
,dbo.table2
,dbo.table3
)。
我希望以这种方式清除所有表格。我错过了什么?
CREATE PROCEDURE truncate_tables()
AS
truncate table dbo.table1
truncate table dbo.table2
truncate table dbo.table3
答案 0 :(得分:7)
删除存储过程名称旁边的()
。如果要将任何参数传递给SP,则需要()
。
在每个;
语句的末尾添加TRUNCATE TABLE
作为查询终止符。
CREATE PROCEDURE truncate_tables
AS
TRUNCATE TABLE dbo.table1;
TRUNCATE TABLE dbo.table2;
TRUNCATE TABLE dbo.table3;
答案 1 :(得分:1)
您遗失了BEGIN
和END
以及分号:
CREATE PROCEDURE truncate_tables AS
BEGIN
truncate table dbo.table1;
truncate table dbo.table2;
truncate table dbo.table3;
END;