/
Forside
/
Teknologi
/
Udvikling
/
SQL
/
Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn
*
Kodeord
*
Husk mig
Brugerservice
Kom godt i gang
Bliv medlem
Seneste indlæg
Find en bruger
Stil et spørgsmål
Skriv et tip
Fortæl en ven
Pointsystemet
Kontakt Kandu.dk
Emnevisning
Kategorier
Alfabetisk
Karriere
Interesser
Teknologi
Reklame
Top 10 brugere
SQL
#
Navn
Point
1
pmbruun
1704
2
niller
962
3
fehaar
730
4
Interkril..
701
5
ellebye
510
6
pawel
510
7
rpje
405
8
pete
350
9
gibson
320
10
smorch
260
Transaction
Fra :
Maxi
Dato :
13-03-04 22:13
Hvordan laver man en transaction i mssql ? Hvis begge SQL statement udføres
korrekt skal der comittes. Hvordan gøres dette??
CREATE PROCEDURE AddUser
(
@UserID int
)
AS
INSERT INTO Temp1(UserID)
VALUES (@UserID )
UPDATE Temp2 SET UserID = @UserID
WHERE (UserID = @UserID )
GO
Søren Lund Jensen (
14-03-2004
)
Kommentar
Fra :
Søren Lund Jensen
Dato :
14-03-04 15:01
Maxi wrote:
> Hvordan laver man en transaction i mssql ? Hvis begge SQL statement
> udføres korrekt skal der comittes. Hvordan gøres dette??
>
> CREATE PROCEDURE AddUser
> (
>
> @UserID int
>
> )
> AS
BEGIN TRANS
> INSERT INTO Temp1(UserID)
> VALUES (@UserID )
>
> UPDATE Temp2 SET UserID = @UserID
> WHERE (UserID = @UserID )
IF @@ERROR <> 0
ROLLBACK TRANS
ELSE
COMMIT
> GO
Kristian Damm Jensen (
14-03-2004
)
Kommentar
Fra :
Kristian Damm Jensen
Dato :
14-03-04 20:07
Søren Lund Jensen wrote:
> Maxi wrote:
>
>> Hvordan laver man en transaction i mssql ? Hvis begge SQL statement
>> udføres korrekt skal der comittes. Hvordan gøres dette??
>>
>> CREATE PROCEDURE AddUser
>> (
>>
>> @UserID int
>>
>> )
>> AS
>
> BEGIN TRANS
>> INSERT INTO Temp1(UserID)
>> VALUES (@UserID )
>>
>> UPDATE Temp2 SET UserID = @UserID
>> WHERE (UserID = @UserID )
>
> IF @@ERROR <> 0
> ROLLBACK TRANS
> ELSE
> COMMIT
>> GO
Du synes ikke det er umagen værd at kontrollere @@error for hvert trin?
Hvis inserten fejler, men updated går godt, så vil du gerne committe?
--
Kristian Damm Jensen damm (at) ofir (dot) dk
"I conclude that there are two ways of constructing a software design:
One way is to make it so simple that there are obviously no
deficiencies and the other way is to make it so complicated that there
are no obvious deficiencies." -- C.A.R. Hoare
Søren Lund Jensen (
15-03-2004
)
Kommentar
Fra :
Søren Lund Jensen
Dato :
15-03-04 20:07
Kristian Damm Jensen wrote:
> Søren Lund Jensen wrote:
> > Maxi wrote:
> >
> >> Hvordan laver man en transaction i mssql ? Hvis begge SQL statement
> >> udføres korrekt skal der comittes. Hvordan gøres dette??
> > >
> >> CREATE PROCEDURE AddUser
> >> (
> > >
> >> @UserID int
> > >
> >> )
> >> AS
> >
> > BEGIN TRANS
> >> INSERT INTO Temp1(UserID)
> >> VALUES (@UserID )
> > >
> >> UPDATE Temp2 SET UserID = @UserID
> >> WHERE (UserID = @UserID )
> >
> > IF @@ERROR <> 0
> > ROLLBACK TRANS
> > ELSE
> > COMMIT
> >> GO
>
> Du synes ikke det er umagen værd at kontrollere @@error for hvert
> trin? Hvis inserten fejler, men updated går godt, så vil du gerne
> committe?
Du har ret. Jeg var vist lidt for hurtig der.
Søg
Alle emner
Teknologi
Udvikling
SQL
Indstillinger
Spørgsmål
Tips
Usenet
Reklame
Statistik
Spørgsmål :
177558
Tips :
31968
Nyheder :
719565
Indlæg :
6408925
Brugere :
218888
Månedens bedste
Årets bedste
Sidste års bedste
Copyright © 2000-2024 kandu.dk. Alle rettigheder forbeholdes.