gespeichert Erzeugen des Ich erhalte eine FehlermeldungFehler bei der Prozedur SQL Server 2008
SQL-Fehler (102): falsche Syntax nahe ')'
beim Versuch, das unter Abfrage als gespeichert zu speichern Verfahren.
Die Abfrage selbst (Entfernen der "Create Procedure" und Begin/End funktioniert gut) und gibt keine Syntaxfehler, und ich habe überall gesucht, aber ich bin ein bisschen fest, und es macht mich verrückt.
CREATE PROCEDURE "downdaly_file_info"()
LANGUAGE SQL
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
begin
declare @file_name varchar(75)
declare @agent_number varchar(15)
declare @aid_batch varchar(15)
declare @aid_agent varchar(15)
declare @Policy_Company varchar(2)
declare @Policy_Province2 varchar(2)
declare @akey varchar(30)
select @aid_batch=aid from audit with(nolock) where atype='OUT-BATCH' and akey like '%'[email protected]_name+'%'
print @aid_batch
select @aid_agent=aid from audit with(nolock) where atype='OUT-AGENT' and aid like @aid_batch+'-%' and [email protected]_number
print @aid_agent
select @akey=akey from audit with (nolock) where aid like @aid_agent+'-%' and atype='OUT-POLICY'
SET @Policy_Company=substring(@akey,15,2)
print @Policy_Company
SET @Policy_Province2 =
CASE
WHEN @Policy_Company = 'CG' THEN substring(@akey,19,2)
WHEN @Policy_Company = 'TR' THEN substring(@akey,20,2)
WHEN @Policy_Company = 'EL' THEN substring(@akey,20,2)
WHEN @Policy_Company = 'IC' THEN substring(@akey,22,2)
WHEN @Policy_Company = 'PI' THEN substring(@akey,20,2)
WHEN @Policy_Company = 'S&' THEN substring(@akey,20,2)
END
print @Policy_Province2
insert into #downdaly_file_data (Name_Of_File,
Agent_Number,
Policy_Number,
Transaction_Number,
Policy_Province,
Trans_Code,
Policy_Company,
Policy_Province2,
Eff_Date_Real
)
select @file_name,
@agent_number,
substring(akey,1,12),
SUBSTRING(adata,20,3),
substring(adata,171,2),
substring(adata,32,3),
@Policy_Company,
@Policy_Province2,
substring(adata,139,6)
from audit with (nolock)
where aid like @aid_batch+'%' and atype='OUT-POLICY'
end
Bearbeiten Sie die Frage und fügen Sie die genaue Fehlermeldung hinzu. –
Sie verwenden MySQL-Syntax ... zumindest zwischen Ihrem 'CREATE' und Ihrem' BEGIN' ... – Shnugo
[Schlechte Angewohnheiten: Putting NOLOCK überall] (https://blogs.sentryone.com/aaronbertrand/bad-habits- nolock-everywhere /) – sstan