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
GELÖST

Bestimmte Zeilen Nummer in mySQL Datenbank löschen

Frage Entwicklung PHP

Mitglied: samsx87

samsx87 (Level 1) - Jetzt verbinden

11.12.2007, aktualisiert 22:18 Uhr, 8849 Aufrufe, 10 Kommentare

Hallo Zusammen

Situation:
Ich habe eine mySQL Datenbank. In dieser möchte ich nun die 34 Zeile löschen - aber wie?

Kann mir jemand helfen? Mit "DELETE * FROM $tablename WHERE ID = 34" funktioniert es irgendwie nicht. Mach ich was falsch?

Mit freundlichen Grüßen

samsx
Mitglied: tikayevent
11.12.2007 um 16:44 Uhr
Ich glaube, dass geht mit LIMIT. Ich nutz es momentan relativ selten, aber lass mal die WHERE-Klausel weg und pack stattdessen ein LIMIT 33,34 dahin.

Bitte nicht an einem Produktivsystem testen, ich bin mir nämlich gerade nicht sicher.
Bitte warten ..
Mitglied: Dani
11.12.2007 um 17:06 Uhr
Hallo samsx87,
du hast doch sicher als Datenbanksystem eine MySQL am laufen. Somit hast die Möglichkeit "phpmyadmin" anzuwenden. Ist ein kl. Tool das auf PHP basiert. Damit ist es möglich, die Datenbanken, Tabellen, User, etc.. .zuverwalten.

Einfach dort das Statement absetzen. Dann siehts du gleich ob es geht. Falls nicht, erscheint eine Fehlermeldung. An dieser kannst du dann erkennen, wo dein Fehler ist!

Ich würde das Statement mal so probieren:
01.
<? 
02.
$sql="DELETE * FROM $tablename WHERE id='34';"
03.
mysql_query($sql); 
04.
?>
Natürlich sollte der Datensatz mit der ID 34 auch noch in der Tabelle existieren.


Grüße
Dani
Bitte warten ..
Mitglied: EvilMoe
11.12.2007 um 18:34 Uhr
01.
> <? 
02.
> $sql="DELETE * FROM $tablename WHERE 
03.
> id='34';"; 
04.
> mysql_query($sql); 
05.
> ?> 
06.
> 

Heisst es nicht nur "DELETE FROM" ? Der "*" kommt doch nur bei einer SELECT abfrage vor oder irre ich mich?
Bitte warten ..
Mitglied: samsx87
11.12.2007 um 19:03 Uhr
Hallo Zusammen

Vielen Dank für eure Antworten.

SELECT * FROM $tabellenname LIMIT 33,34 liefert mir alle Einträge bis und mit dem Eintrag 34

SELECT * FROM $tabellenname WHERE id='34' liefert mir "#1054 - Unknown column 'id' in 'where clause' "

Hat jemand noch eine andere Idee?
Bitte warten ..
Mitglied: EvilMoe
11.12.2007 um 19:05 Uhr
Dann heißt das Feld bei dir nicht "id"! Du musst schon den richtigen Feldnamen benutzen!
Bitte warten ..
Mitglied: Dani
11.12.2007 um 19:08 Uhr
Hi EvilMoe,
du hast Recht. Das Sternchen gehört da nicht hin. C&P halt.....


Grüße
Dani
Bitte warten ..
Mitglied: samsx87
11.12.2007 um 19:36 Uhr
Ich habe aber kein ID-Feld (oder was ähnliches) ich möchte doch nur die Zeile 34 Auslesen ohne extra noch ein zusätzliches Feld mit einer Nummerierung zu verwenden Das muss doch irgendwie gehe :/
Bitte warten ..
Mitglied: EvilMoe
11.12.2007 um 19:40 Uhr
WIe lautet denn der "Primary Key". Es wird doch eine eindeutige aufzählung vorhanden sein oder nicht?
Bitte warten ..
Mitglied: Biber
11.12.2007 um 21:43 Uhr
Moin samsx87,

Situation:
Ich habe eine mySQL Datenbank.

Ich frage mal: wozu?

In dieser möchte ich nun die 34 Zeile löschen
Das, was Du beschreibst, ist ein zeilen-orientieres Arbeiten.
Abhängig von einem vorherigen prüfenden Blick von jemand, der das sieht, welche Zeile da nicht hingehört (so genannter bio-optical scan).
Etwas für Tesxtdateien oder Zeilen einer Excel-Tabelle.

Die meisten Datenbanken arbeiten etwas anders - da gibt es einen eindeutigen Schlüsselbegriff je Datensatz. Wie Artikelnummer, Kundennummer oder meintwegen eine künstliche ID, die beim Neuanlegen (als Wert in einem eigenen Feld) vergeben wird.
Nur dann nämlich ist diese Zeilennummer unabhängig von den Suchkriterien oder der festgelegten ORDER/Reihenfolge.

Wenn Du ein "Select * from whatever" machst, ist der Reihenfolge der Sätze zufällig.
Und in einer Tabelle mit 2 Mio Datensätzen würde ich nicht den Satz #1289842 löschen, weil der das letzte Mal diese "Zeilennummer" hatte.
Eigentlich auch nicht den Satz #34.

Einige Datenbanken bieten eine Funktion RowId() an, z.B. Oracle oder eine Funktion/einen Feldtyp ROWID, z.B. DB2, aber erstens zu anderen Zwecken und mit anderen Fussangeln.

mySQL hat so etwas nicht.

Und das ist nur begrenzt schade.

Grüße
Biber
Bitte warten ..
Mitglied: samsx87
11.12.2007 um 22:18 Uhr
Na toll Jetzt muss ich also eine Umweg über eine extra Spalte (z.B. "ID" wie es EvilMoe vorgeschlagen hat) machen... grml
Naja trotzdem vielen Dank für eure Hilfe!

Gruss samsx
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(1)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
VB for Applications
gelöst Vbscript bestimmte Zeile ungeachtet der Nummerierung löschen (4)

Frage von aletri zum Thema VB for Applications ...

Batch & Shell
Powershell - Zeilen in einer csv löschen bis (7)

Frage von Franz-Josef-II zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...