Ik heb een stored procedure die veel parameters heeft. Nu is het zo dat niet alle parameters opgegeven hoeven te zijn. Wat ik dan doe bij het aanmaken van de Command object(VB.NET) is weliswaar de parameter toevoegen aan de lijst met parameters maar er geen value aan toe te wijzen voor die parameter die niet is opgegeven.
Dat vindt SQL niet leuk! de volgende foutmelding komt tevoorschijn bij het runnen van de command vanauit de applicatie:
Procedure 'spInsertRecord' expects parameter '@Password', which was not supplied
Wat is de beste manier om in de stored procedure om te gaan met niet gespecificeerde parameters? Hieronder zie je de simpele versie van de code. In werkelijkheid heb ik 16 parameters die doorgegeven worden aan de SP. SQL vindt het dus niet leuk als ik ServiceVersion bijv. toevoeg aan de lijst met parameters maar niet specificeer!
Dat vindt SQL niet leuk! de volgende foutmelding komt tevoorschijn bij het runnen van de command vanauit de applicatie:
Procedure 'spInsertRecord' expects parameter '@Password', which was not supplied
Wat is de beste manier om in de stored procedure om te gaan met niet gespecificeerde parameters? Hieronder zie je de simpele versie van de code. In werkelijkheid heb ik 16 parameters die doorgegeven worden aan de SP. SQL vindt het dus niet leuk als ik ServiceVersion bijv. toevoeg aan de lijst met parameters maar niet specificeer!
SQL:
1
2
3
4
5
6
7
8
9
10
| CREATE PROCEDURE DBO.spInsertRecord ( @ServiceName varchar(100), @ServiceVersion varchar(50) ) AS SET NOCOUNT OFF INSERT INTO dbo.tblRequests(serviceName, serviceVersion) VALUES (@ServiceName, @ServiceVersion); GO |
[ Voor 3% gewijzigd door Goldme op 13-01-2005 10:55 ]