---
title: "prestanda vid transaktioner"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/7754-prestanda-vid-transaktioner"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "fredrik"
published: "2001-01-15T16:13:00.000Z"
updated: "2001-01-17T15:45:00.000Z"
replies: 5
views: 179
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/7754-prestanda-vid-transaktioner"
---

# prestanda vid transaktioner

## #1 — fredrik, 2001-01-15T16:13Z

Jag har en liten fundering om när man gör transaktioner som man vill ha lite koll på i sina applikationer.

Man använder ju då "BeginTran", "CommitTran" och "RollBackTran" för att säkerhetsställa sina transaktioner (inserts m.m.).

Som jag ser det finns det 3 olika sätt:
1\. Direkt på databas servern. Exempelvis i koden i den lagrade proceduren i sql-server.

2\. I Asp. Att använda connection-objektet och sätta transaktions-kollen där.

3\. Via COM+ (MTS). 

Är det nån som har något att säga om vad som är bäst, dels för säkerheten men också för prestanda m.m.?

Någon som vet?

Permalänk: https://www.webforum.nu/p/7754

## #2 — emission, 2001-01-15T16:50Z

<http://www.asptoday.com/articles/20010109.htm>

Permalänk: https://www.webforum.nu/p/254002

## #3 — fredrik, 2001-01-16T14:12Z

Ok, tackar för det!

som jag tolkar det verkar det om om det vore bäst i de flesta fall att köra transaktions-hanteringen via T-sql. 

Det verkar iaf inte som om com+ helt klart är det bästa som jag trodde...

Nån som har nån mer erfarenhet av det eller något att tillägga?

Permalänk: https://www.webforum.nu/p/254003

## #4 — JE, 2001-01-16T14:36Z

Hmm, ingen som kan förklara lite hur det går till när man göra en transaktion direkt i ASP koden med hjälp av connection objectet. Har försökt ett par gånger men inte riktigt fått det att funka, inte heller har jag fått några felmeddelande så jag är lite fundersam. 
Ingen som har ett litet enkelt exempel eller en sida man kan läsa mer på?

Permalänk: https://www.webforum.nu/p/254004

## #5 — fredrik, 2001-01-17T07:46Z

sidan som emission tipsade om ovanför står en del på...

ett enkelt exempel:

```
set conn = server.CreateObject("adodb.connection")
conn.Open dbStr

'rätt sql-sats
sql = "INSERT INTO adotest (bokstav) VALUES ('fk')"

'felaktig sql-sats
sql2 = "INSERT INTO adotessd (bokstav) VALUES ('fk2')"

'fortsätt vid fel
on error resume next

'starta trans
conn.BeginTrans

'kör sql (fungerar)
conn.Execute(sql)

'kör slq2 (fungerar inte)
conn.Execute(sql2)

'du får ett err.number att kolla om nåt gått fel
if err.number<>0 then
	conn.RollbackTrans
else
	conn.CommitTrans
end if

conn.Close
set conn = nothing
```

Jag testar mot sql-server, där kan du även se hur ado översätter transaktionkoden till T-sql om du startar profiler och lägger till din databas där.

Permalänk: https://www.webforum.nu/p/254005

## #6 — JE, 2001-01-17T15:45Z

Hmm, va ju i stort sett precis likadant jag gjorde när jag testade. Ville dock inte funka för mej. 

Tack för exemplet iaf, nu vet jag att jag inte är på helt fel väg iaf, får testa vidare :)

Permalänk: https://www.webforum.nu/p/254006

---

Tråden på webben: https://www.webforum.nu/amne/asp/7754-prestanda-vid-transaktioner
