Hjælp til Stored Procedure. Et script melder fejl
Hej eksperter,Jeg prøver at lave nogle stored procedures som skal bruges til at indtaste data i min database.
Det databasen skal bruges til er at gemme scorekort fra en skydebane.
Min SQL kode kan I se her: http://pastebin.com/LmDVU8Wp
Jeg bruger 3 stored procedures.
En til at oprette et scorekort. I denne er der 3 kolonner. scoreNo, medlemNo samt dato. scoreNo er primary key og har IDENTITY egenskaben.
På hver scorekort er der 8 runder. Disse oprettes også i en tabel for sig selv. Her er kolonnerne rundeNo,scoreNo,resul1,resul2,resul3,resul4 samt resul5. Primary key er sammensat af rundeNo og scoreNo. scoreNo er samtidigt foreign key.
Den sidste er en storage procedure som kalder de 2 andre, for at oprette det hele i "ét" huk. Den er oprettet på sådan en måde, at hvis argumenter bliver udeladt antager den at man scorede 0 på skydebanen.
Kalder jeg de 2 første stored procedures hver for sig, og på den måde opretter det hele virker det fint. Kalder jeg den sidste får jeg en fejl:
(1 row(s) affected)
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Msg 8114, Level 16, State 1, Procedure sp_opretRunde, Line 0
Error converting data type nvarchar to tinyint.
Den der går igennem er det der skal oprette scorekortet. Ingen af runderne går igennem. Jeg kan ikke gennemskue denne, da jeg ikke har nogle variabler af typen nvarchar, og alle kolonnerne i RUNDE tabellen er TINYINT.
Et eksempel på kaldet af den sidste stored procedure er:
EXECUTE sp_indtastResultat 4,3,10,3,4,5,5,2,3,6,4,1,2,3,6,5
Hvor den så bare skal antage at resten af værdierne er 0.
Nogen der ved hvorfor jeg får denne fejl?
På forhånd tak.