AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi wieviele Transaktionen
Thema durchsuchen
Ansicht
Themen-Optionen

wieviele Transaktionen

Ein Thema von Hansa · begonnen am 31. Dez 2002 · letzter Beitrag vom 31. Dez 2002
Antwort Antwort
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

wieviele Transaktionen

  Alt 31. Dez 2002, 08:22
Hi,

ich habe hier gerade eine Borland-Dokumentation gelesen. Da schreiben sie, am besten man würde für jede Table eine eigene Transaktion starten. Der Vorteil von Transaktionen besteht doch u.a. darin, daß mit Rollback alles was im Rahmen EINER Transaktion läuft rückgängig zu machen. Schreibe ich z.B. eine Rechnung, und will diese rückgängig machen, so kann ich ich doch den Lagerbestand, die Rechnungspositionen usw. auf einen Schlag korrigeren, sofern ich das StartTransaction richtig setze. Wieso soll ich nun für jede Table eine eigene starten ? Oder habe ich das total falsch verstanden ?

Gruß
Hansa
  Mit Zitat antworten Zitat
xbu58

Registriert seit: 10. Dez 2002
Ort: Bäretswil / Schweiz
121 Beiträge
 
Delphi 7 Enterprise
 
#2
  Alt 31. Dez 2002, 14:14
Hallo Hansa

Du hast vollkommen recht. Es ist ein absoloter Unsinn, was da geschrieben wurde. Eine Transaktion ist wirklich dazu da, einen gesamten Job rückgängig zu machen. Das kann natürlich auch eine Tabelle sein, was z.B. der Fall ist, wenn Du mehrere Datensätze in eine Tabelle speicherst und diese alle wieder entfernt werden sollen, wenn ein Fehler aufgetreten ist.

In diese Zusammenhang noch ein Hinweis:
Eine Transaktion sollte nur über einen beschränkten Zeitraum offen bleiben. Dies ist insbesonders dann wichtig, wenn die Datenquelle ein MS-SQL-Server (Version 7 oder älter) ist. Diese SQL-Server-Versionen kennt nur das Page-Locking im Zusammenhang mit Transaktionen, wodurch nicht ein bestimmter Datensatz gelockt wird, sondern eine oder mehrer Pages. Dadurch werden unter umständen mehrere Datensätze gelockt, die nichts mit dem gewollten Datensatz zu tun hat. Deshalb sollte die Transaktion so schnell als möglich abgeschlossen sein.

Gruss
Xaver
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3
  Alt 31. Dez 2002, 16:03
Hi,

Zitat von xbu58:
Du hast vollkommen recht. Es ist ein absoloter Unsinn, was da geschrieben wurde.
so seh ich das auch, hoffentlich hast Du Recht.

die Quelle :

http://community.borland.com/article...0ClientDataSet

Zitat:
Dies ist insbesondere dann wichtig, wenn die Datenquelle ein MS-SQL-Server (Version 7 oder älter) ist. Diese SQL-Server-Versionen kennt nur das Page-Locking im Zusammenhang mit Transaktionen, wodurch nicht ein bestimmter Datensatz gelockt wird, sondern eine oder mehrer Pages.
Also auf Deutsch : Page-Size 4096. Datensatz-Größe 512, dann werden die auf dieser Page befindlichen 8 Datensätze gelockt, selbst wenn sie gar nicht gebraucht werden Das ist ja ein Witz, typisch M$.

Gruß
Hansa



[/quote]
  Mit Zitat antworten Zitat
xbu58

Registriert seit: 10. Dez 2002
Ort: Bäretswil / Schweiz
121 Beiträge
 
Delphi 7 Enterprise
 
#4
  Alt 31. Dez 2002, 16:12
Hi,

Ich denke, dass ich in diesem Falle wirklich recht habe. Bin deswegen einige Male auf die Schnauze gefallen , bis ich kapiert habe, was für einen Schrott M$ da sich geleistet hat. Aber was heisst das "auf Deutsch"? Ist mein Deutsch so schlecht? 8) Es ist auf jedenfall so wie Du das ausgedeutscht hast!

Gruss
Xaver
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5
  Alt 31. Dez 2002, 16:32
Hi Xaver,

Du bist aus der Schweiz, aha, hab ich nicht gesehen. 8)

Zitat von xbu58:
Ich denke, dass ich in diesem Falle wirklich recht habe.
Bin deswegen einige Male auf die Schnauze gefallen
Das glaube ich auch, also, daß Du Recht hast. Nicht, daß Du wirklich in den Alpen ausgerutscht bist. M$ würde ich das eher gönnen.

Zitat von xbu58:
Aber was heisst das "auf Deutsch"? Ist mein Deutsch so schlecht? 8) Es ist auf jedenfall so wie Du das ausgedeutscht hast!
Dein Deutsch ist doch einwandfrei ! Bevor Du mich mißverstehst : Ich wünsche Dir jetzt einen guten Rutsch ins nächste Jahr. Bei uns heißt das : "Alles Gute fürs neue Jahr". In Ostfriesland heißt es wahrscheinlich wieder anders.

Gruß
Hansa
  Mit Zitat antworten Zitat
xbu58

Registriert seit: 10. Dez 2002
Ort: Bäretswil / Schweiz
121 Beiträge
 
Delphi 7 Enterprise
 
#6
  Alt 31. Dez 2002, 16:40
Hi Hansa

Hab Dich nicht missverstanden. Aber hätte ja sein können

Bei uns heisst das "En guetä Rutsch". Ich nehme aber nicht an, dass aussprechen kannst. Deshalb auch noch "Alles Gute fürs neue Jahr".

Gruss
Xaver
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz