Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

CSharp Datensatz sperren

Frage Entwicklung VB for Applications

Mitglied: AndyAh

AndyAh (Level 2) - Jetzt verbinden

16.12.2010 um 08:04 Uhr, 5064 Aufrufe, 4 Kommentare

Hi NG,

wie kann ich mit C#.net 2010 Express einen Datensatz aus einer Tabelle (Access, MS-Sql Server) sperren, damit kein anderer Benutzer die Daten überschreiben kann?

MfG
Andy
Mitglied: maretz
16.12.2010 um 09:01 Uhr
Moin,

in der Regel ist das die Aufgabe des DBMS und nicht die Aufgabe der Programmierung ;).

Ich weiss z.B. bei MySQL das man sowas natürlich per "lock table" hinbekommen könnte -> wobei die Frage ist: Sollen die Daten nicht verändert werden können oder auch gar nicht angezeigt werden können? Was ist wenn dein Programm mal kurz auf Urlaub geht? Oder wenn z.B. der Sachbearbeiter mal eben den Datensatz öffnet und erstmal ne gute alte Hawanna rauchen geht? (das dauert ja dann schonmal 30 minuten )

Schönen Gruß

Mike
Bitte warten ..
Mitglied: AndyAh
16.12.2010 um 09:49 Uhr
Hi Mike,

es soll der Datensatz im Netzwerk (Multiuserumgebung) gesperrt werden, um zu verhindern, das ein anderer die Daten während der Bearbeitung überschreibt.

Gruß
Andy
Bitte warten ..
Mitglied: perseues
16.12.2010 um 09:57 Uhr
Hallo Andy,

wenn Du die Isolationsebene der Transaktion auf Serializable setzt, werden die einzelnen Abfragen nacheinander abgearbeitet. Weiß aber nicht, ob das mit Access geht (eher nicht, da keine Transaktionen). Dafür mußt Du das in der SqlConnection.BeginTransaction-Methode der SQLConnection-Klasse einstellen. Schau mal im Internet nach den Schlagworten, um Beispiele zu finden. Andere Möglichkeiten fallen mir nicht ein.

Grüße perseues
Bitte warten ..
Mitglied: mrtux
16.12.2010 um 10:03 Uhr
Hi !

Zitat von AndyAh:
es soll der Datensatz im Netzwerk (Multiuserumgebung) gesperrt werden, um zu verhindern, das ein anderer die Daten

Wie mike ja schon schreibt, musst Du das normalerweise nicht selbst programmieren, ausser Du verwendest eine uralte Datenbankengine aus den 70ern oder 80ern, da musste man sich noch selbst um das Locking kümmern.

Meine Empfehlung: Gleich einen richtigen SQL-Datenbankserver verwenden und Access (zumindest als Datenbankengine) mal ganz locker links liegen lassen...Wenn dein Projekt nix kosten darf, dann nimm eine Opensource Variante, auch dort gibt es transaktionssichere Datenbanken.

mrtux
Bitte warten ..
Ähnliche Inhalte
Windows 10
IP sperren? (29)

Frage von knowon zum Thema Windows 10 ...

PHP
gelöst MySQL Update eines Datensatz mit Variable (4)

Frage von Jens4ever zum Thema PHP ...

Microsoft Office
gelöst Automatisch entscheiden ob prozentual oder fest anzahl von Datensätze (7)

Frage von hugothemagpie zum Thema Microsoft Office ...

Neue Wissensbeiträge
Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Microsoft Office
Office Druck fehler (18)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Netzwerkmanagement
Windows Server 2008 R2: "netsh reset" nicht verfügbar? (11)

Frage von RickTucker zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
Uninitialisierte Festplatte - Daten retten (11)

Frage von peterla zum Thema Festplatten, SSD, Raid ...

Microsoft Office
Outlook 2016 in Ordneransicht starten - GPO (9)

Frage von D-Line zum Thema Microsoft Office ...