php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.07.2005, 13:11  
Benutzer
 
Registriert seit: 20.07.2005
Beiträge: 34
AliceD
Standard LOCK TABLES / LAST_INSERT_ID

hi,

ich hab eine kleine Verständnisfrage zu LOCK TABLES und LAST_INSERT_ID().

Um die letzte ID eines Eintrages einer Tabelle zu bekommen nutz ich die Funktion LAST_INSERT_ID(). Damit kein anderer Thread die ID verfälscht
setzt ich ein WRITE LOCK auf die Tabelle.
also:

LOCK TABLES foo WRITE
INSERT INTO foo..
INSERT INTO foobar (lastid) VALUES (LAST_INSERT_ID())
UNLOCK TABLES foo

soweit so gut und nun meine Frage:
Was ist wenn ein anderer Thread in eine andere Tabelle schreibt? Wird dann LAST_INSERT_ID() verfälscht? D.h. müsste ich auf alle Tabellen ein WRITE LOCK setzen in die eine anderer Thread schreiben könnte?

also:
LOCK TABLES foo,bar,bla..usw WRITE
INSERT INTO foo..
INSERT INTO foobar (lastid) VALUES (LAST_INSERT_ID())
UNLOCK TABLES foo

???
AliceD ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.07.2005, 13:28  
Gast
 
Beiträge: n/a
Standard

LAST_INSERT_ID() gilt jeweils für eine Datenbankverbindung.
Für zwei gleichzeitige aber verschiedene Datenbankverbindungen werden also auch zwei Werte unabhängig voneinander gespeichert.
  Mit Zitat antworten
Alt 20.07.2005, 13:42  
Benutzer
 
Registriert seit: 20.07.2005
Beiträge: 34
AliceD
Standard

gilt das auch für die php funktion mysql_insert_id() ?
AliceD ist offline   Mit Zitat antworten
Alt 20.07.2005, 13:45  
Erfahrener Benutzer
 
Registriert seit: 05.07.2004
Beiträge: 1.476
DiBo33
Standard

Zitat:
Zitat von AliceD
gilt das auch für die php funktion mysql_insert_id() ?
ja
DiBo33 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Verschachtelte Abfrage über mehrere Tables hinweg? php_frage Datenbanken 9 29.04.2006 19:55
Extrahieren aus 2 Tables mit einem bekannten Wert ssm Datenbanken 12 23.03.2006 20:29
[Erledigt] SHOW TABLES Probelm Datenbanken 1 08.08.2005 14:00
Tables Schubi PHP Tipps 2005-2 0 05.08.2005 15:09
Tables Schubi PHP Tipps 2005-2 0 05.08.2005 15:08
Tables PHP Tipps 2005-2 0 05.08.2005 13:39
EZPDF Lines und tables PHP Tipps 2005-2 1 22.07.2005 17:20
Suche zufalls(bild)script das in tables läuft... Beitragsarchiv 0 05.07.2005 12:18
SHOW PROCESSLIST und TEMPORARY TABLES tapferesschneiderlein Datenbanken 2 05.03.2005 11:40
text eintragen in mySQL Tables PHP Tipps 2005 2 05.02.2005 17:03
Tables von DB1 nach DB2 transportieren (Per script) Datenbanken 5 25.08.2004 11:55
MySQL Tables wiederherstellen... Datenbanken 4 08.07.2004 09:15

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mssql lock table, last_insert_id(), last_insert_id, lock tables write, last_insert_id mssql, lock tables, mssql last_insert_id, mssql table lock, mssql write lock, lock tables mssql, lock table mssql, mssql lock tables, php lock tables, select table where last_insert_id(), php lock table write, last_insert_id von einer bestimmten tabelle, mssql last_insert_id(), mysql_insert_id mehrere, mssql lock table php, mysql last_insert_id php

Alle Zeitangaben in WEZ +1. Es ist jetzt 05:34 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.