[MSSQL] Stored Procedure soll zwei sachen aufeinmal erledigen

DimpiM

Mitglied
Servus Leute, ich sitze vor einem Problem und hoffe ihr könnt mir weiterhelfen.
Ich möcht in einer SQL-Datenbank einen Datensatz speichern und dann den SHA1-Hash des gespeicherten Datensatzes zurückgeben. Und das alles in einer Stored Procedure.

ich habs mir iwie so vorgestellt:
...
SELECT HASHBYTES('SHA1',(INSERT INTO test (bla) VALUES(@bla))
...
so funktionierts aber nicht...
Habt ihr vielleicht eine Idee?
 
sofern du MSSQL benutzt sieht das ungefähr so aus

SQL:
Create Procedure usp_machwas(@bla varchar(500))
as
declare @ret varchar (50)

select @ret = hashbytes('SHA1',@bla) 

insert into test ( bla ) values (@bla) 

return @ret

Grüsse Alex
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

dabei ist die Output-Klausel hilfreich:
SQL:
SELECT [id]
      ,[hash_value]
  FROM [tbl_hash]
  
DECLARE @tmpTable table( id bigint, hash_value varchar(50));

insert tbl_hash OUTPUT INSERTED.hash_value into @tmpTable (hash_value) values ('AAA') 
  
SELECT [id]
      ,[hash_value]
  FROM @tmpTable

Gruß Tom
 
Zurück