Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Feld in bestehender Tabelle hinzufügen (https://www.delphipraxis.net/141476-feld-bestehender-tabelle-hinzufuegen.html)

Luckie 9. Okt 2009 17:58

Datenbank: MYSQL • Zugriff über: PHP

Feld in bestehender Tabelle hinzufügen
 
Ich habe eine Tabelle, in dieser Tabelle befinden sich schon Daten. Was passiert jetzt, wenn ich über PHPMyAdim ein oder mehrere Felder der Tabelle hinzufüge? Zerstöre ich damit die Daten in der Tabelle oder bleiben die erhalten und ich muss die zusätzlichen Felder nur in meinen Abfragen berücksichtigen.

DeddyH 9. Okt 2009 18:05

Re: Feld in bestehender Tabelle hinzufügen
 
Die Daten sollten schon erhalten bleiben, sonst könntest Du MySQL in die Tonne treten :mrgreen:

Jürgen Thomas 9. Okt 2009 18:08

Re: Feld in bestehender Tabelle hinzufügen
 
Hallo Michael,

ob PHP besondere Einschränkungen verlangt oder selbst verursacht, weiß ich nicht. Nach MySql-Doku und dem Sinn einer SQL-Datenbank kann ich mir überhaupt nicht vorstellen, dass zusätzliche Spalten zu irgendwelchen Problemen führen könnten (siehe auch Detlefs Antwort).

Wenn du wirklich Angst hast, dann mach es doch mit einer kleinen Testtabelle. Ich wundere mich sowieso, dass du daran zweifelst.

Gruß Jürgen

jfheins 9. Okt 2009 18:27

Re: Feld in bestehender Tabelle hinzufügen
 
Wenn du eine Spalte hinzufügst, bleiben die Daten erhalten. Alle vorhandenen Datensätze sollten null - oder falls die neue Spalte einen Defaultwert hat den Defaultwert - zugewiesen bekommen. Wie das ist, wenn du z.B. die neue Spalte Unique machst, weis ich nicht. Könnte mir aber vorstellen dass dann trotzdem alle null werden und du wieder einen konsistenten Zustand herbeiführen darfst ;)

In nachfolgenden Queries sollte die neue Spalte beachtet werden, wo nötig.

Matze 9. Okt 2009 18:44

Re: Feld in bestehender Tabelle hinzufügen
 
Julius' Aussage kann ich bestätigen. Bei mir funktionierte das bisher auch reibungslos und alle Spalten erhalten als Wert, wie bereits geschrieben, den Defaultwert bzw. NULL.

Luckie 9. Okt 2009 20:41

Re: Feld in bestehender Tabelle hinzufügen
 
Zitat:

Zitat von Jürgen Thomas
Ich wundere mich sowieso, dass du daran zweifelst.[/i]

Ich wollte zur Sicherheit nur noch mal nachfragen.

Sir Rufo 9. Okt 2009 22:38

Re: Feld in bestehender Tabelle hinzufügen
 
Aber einfach mal testweise bei einer vorhandenen Tabelle mit Daten eine Spalte anfügen und dann die Daten anschauen, wäre doch schneller gewesen als den Thread hier zu erstellen, oder?

* Nein, bitte nicht schlagen! :mrgreen: *

Muchacho 9. Okt 2009 23:07

Re: Feld in bestehender Tabelle hinzufügen
 
Zitat:

Zitat von Sir Rufo
Aber einfach mal testweise bei einer vorhandenen Tabelle mit Daten eine Spalte anfügen und dann die Daten anschauen, wäre doch schneller gewesen als den Thread hier zu erstellen, oder?

* Nein, bitte nicht schlagen! :mrgreen: *


Ich bitte Dich :evil:

Fragen lesen auch andere User und lernen dabei.


In diesem Sinne, einfügen eines Feldes:

alter table kunde add NAME varchar(30) NULL
;


Und NEIN, experimentieren mit einer Datenbank (mit z.B. wichtigen Daten)

ist NICHT immer sinnvoll, oder?

Gruß

Muchacho

Die Muhkuh 9. Okt 2009 23:43

Re: Feld in bestehender Tabelle hinzufügen
 
Zitat:

Zitat von Muchacho
Und NEIN, experimentieren mit einer Datenbank (mit z.B. wichtigen Daten)

ist NICHT immer sinnvoll, oder?

Dann backupt oder kopiert man sich die Datenbank vorher? :roll:

Muchacho 9. Okt 2009 23:54

Re: Feld in bestehender Tabelle hinzufügen
 
Hahaha :-D

Na ja, hast wohl Recht, aber allein experimentieren reicht oft nicht aus.

Man muss auch manchmal verstehen was sich da abspielt und dann am besten
Fragen.

Aber bei Luckie hinkte schon immer das Datenbankwesen hinterher. :mrgreen:

Er hat dafür andere Stärken, keine Angst.

Muchacho


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:16 Uhr.
Seite 1 von 2  1 2      

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