Opdatere i en sql streng
Hej,Jeg SKAL bruge en sql streng (altså en streng, jeg selv bygger op) til at opdatere en tabel i en database. Men er støt ind i problemet, når jeg skal opdatere et tekst felt.
Jeg gør det på følgende måde - som ikke giver fejl, men heller ikke opdaterer feltet i databasen:
ALTER PROCEDURE [dbo].[XTest]
@environment AS NVARCHAR(1) = null, --miljøtype
@fCasePId AS INT = null, --sags id
@fCustomerType AS NVARCHAR = null --kundetype (privat/firma)
AS
BEGIN
DECLARE @SQLString NVARCHAR(2500)
DECLARE @XfCasePId VARCHAR(50)
SET @XfCasePId = CONVERT(VARCHAR(50), @fCasePId)
BEGIN TRANSACTION
BEGIN TRY
SET @SQLString = 'UPDATE '
SET @SQLString = @SQLString + @environment + 'txCase SET '
SET @SQLString = @SQLString + 'fCaseCustomerType = ' + @fCustomerType
SET @SQLString = @SQLString + ' WHERE fCasePId = ' + @XfCasePId
EXEC sp_executesql @SQLString
COMMIT TRANSACTION
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
END CATCH
END
Jeg er sådan set overbevist om, at det er de ' (snyffer), som mangler i selve parameteren - men kan ikke hitte ud af hvad det er jeg så ellers skal skrive i:
SET @SQLString = @SQLString + 'fCaseCustomerType = ' + @fCustomerType
Nogen der ved, hvordan jeg kan opdatere med en tekst streng når jeg bygger det op i en streng?
mvh
simsen :-)