gpt4 book ai didi

sql - “CREATE PROCEDURE”必须是批处理中的唯一语句(错误)

转载 作者:行者123 更新时间:2023-12-02 17:10:10 25 4
gpt4 key购买 nike

我正在创建此表,但第一个过程 (sp_joseview) 遇到问题

create table josecustomer(
name varchar(50),
address varchar(300),
ssnid int,
balance bigint,
accountnumber bigint
)

insert into josecustomer values('Aman','Canada',10000,5000,100000000)
insert into josecustomer values('Shubham','USA',10001,6000,200000000)
insert into josecustomer values('Himanshu','Australia',10002,2000,300000000)
insert into josecustomer values('Jose','India',10003,3000,400000000)
insert into josecustomer values('Albert','Brazil',10004,4000,500000000)
insert into josecustomer values('Peterson','Germany',10005,7000,600000000)
insert into josecustomer values('Adam','Honkong',10006,8000,700000000)
insert into josecustomer values('William','Paris',10007,9000,800000000)

select * from josecustomer

create proc sp_joseview
as begin
select * from josecustomer
end
go

create proc sp_updatejose
(@accountno bigint,@newbalance bigint)
as begin
update josecustomer
set balance=@newbalance
where accountnumber=@accountno
end
go

第一个过程显示语法错误,但我无法弄清楚该错误可能是什么。

最佳答案

该错误是不言自明的 - 您无法发出 CREATE PROCEDURE 语句,除非它是批处理中的唯一语句。

在 SSMS 中,GO 关键字将语句拆分为单独的批处理,因此您需要在 CREATE PROCEDURE 之前的语句后面添加一个:

create table josecustomer(
name varchar(50),
address varchar(300),
ssnid int,
balance bigint,
accountnumber bigint
)

insert into josecustomer values('Aman','Canada',10000,5000,100000000)
insert into josecustomer values('Shubham','USA',10001,6000,200000000)
insert into josecustomer values('Himanshu','Australia',10002,2000,300000000)
insert into josecustomer values('Jose','India',10003,3000,400000000)
insert into josecustomer values('Albert','Brazil',10004,4000,500000000)
insert into josecustomer values('Peterson','Germany',10005,7000,600000000)
insert into josecustomer values('Adam','Honkong',10006,8000,700000000)
insert into josecustomer values('William','Paris',10007,9000,800000000)

select * from josecustomer
Go --Add a Go here

create proc sp_joseview
as begin
select * from josecustomer
end
go

create proc sp_updatejose
(@accountno bigint,@newbalance bigint)
as begin
update josecustomer
set balance=@newbalance
where accountnumber=@accountno
end
go

关于sql - “CREATE PROCEDURE”必须是批处理中的唯一语句(错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41022645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com