Import funktioniert nicht

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Melewo
    replied
    Originally posted by Guenni61 View Post
    Auch muß der Primärschlüssel auf die Spalte

    gesetzt werden, sonst gibts eine Fehlermeldung.
    Ändert der Eintrag bei mir von allein, wenn vorher nichts anderes ausgewählt oder festgelegt wurde.

    Code:
    CREATE TABLE IF NOT EXISTS `testname` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `tag` int(2) DEFAULT NULL,
      `monat` int(2) DEFAULT NULL,
      `jahr`  int(4) DEFAULT NULL,
      `zahl1` int(2) DEFAULT NULL,
      `zahl2` int(2) DEFAULT NULL,
      `zahl3` int(2) DEFAULT NULL,
      `zahl4` int(2) DEFAULT NULL,
      `zahl5` int(2) DEFAULT NULL,
      `zahl6` int(2) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=7;

    Leave a comment:


  • Guenni61
    replied
    Originally posted by Melewo View Post
    Du brauchst keine Tabelle leeren, wenn Du eine Spalte hinzufügst, Du brauchst nur die Struktur wie beschrieben durch Hinzufügen einer Spalte mit AUTO INCREMENT ändern.
    Hi Melewo,

    tatsächlich, ein Leeren ist nicht erforderlich. Aber nur AUTO INCREMENT

    reicht trotzdem nicht. Auch muß der Primärschlüssel auf die Spalte

    gesetzt werden, sonst gibts eine Fehlermeldung.

    Gruß
    Günni

    Leave a comment:


  • Melewo
    replied
    Du brauchst keine Tabelle leeren, wenn Du eine Spalte hinzufügst, Du brauchst nur die Struktur wie beschrieben durch Hinzufügen einer Spalte mit AUTO INCREMENT ändern.

    Leave a comment:


  • Guenni61
    replied
    Originally posted by Tastatur View Post
    Es hat geklapt die Datenbank ist drin, allerding ohne eine Spallte die fortlaufend nummeriert ist.
    Ich meine die Spalte ID Kann ich die noch nachträglich einfügen. Wie kann ich das machen ?
    Hi Tastatur,

    du arbeitest doch mit phpMyAdmin. Damit kannst du doch eine weitere Spalte an den Anfang der Tabelle einfügen.
    Unter Extras auto_increment auswählen und den Primärschlüssel setzen.
    Die CSV-Datei muß dann natürlich auch am Anfang jeder Zeile ein (leeres) Feld bekommen. Das sieht dann so aus:

    ;9;10;1955;13;41;3;23;12;16
    ;16;10;1955;12;32;30;49;3;18
    ;23;10;1955;34;12;14;24;36;23
    ;30;10;1955;30;13;36;44;23;4
    ;6;11;1955;31;44;6;49;5;39
    ;13;11;1955;29;44;6;37;22;18
    ;20;11;1955;27;44;8;16;12;4
    ;27;11;1955;26;37;9;44;46;24
    ;4;12;1955;47;20;31;26;21;5
    ;11;12;1955;10;26;37;8;31;22

    Ich hab' jetzt hier Semikolon als Trennzeichen benutzt. Jetzt die Tabelle leeren (oder leeren, bevor du die Spalte einfügst),
    und die CSV-Datei erneut importieren.

    Gruß
    Günni

    Leave a comment:


  • Melewo
    replied
    Rufst die Datenbank und die Tabelle auf, dann nicht "Ansicht" sondern ->Struktur auswählen.

    Unter der Liste sollte nun eine Zeile mit Auswahl "1 Spalte" einfügen und Auswahl "An den Anfang der Tabelle" angezeigt werden. Auf OK.

    Bei der sich neu öffnenden Seite die Spalte mit ID benennen, bei INT belassen und bei AUTO INCREMENT ein Häkchen setzen. Das sollte es dann gewesen sein.

    Leave a comment:


  • Tastatur
    replied
    Es hat geklapt die Datenbank ist drin, allerding ohne eine Spallte die fortlaufend nummeriert ist. Ich meine die Spalte ID
    Kann ich die noch nachträglich einfügen. Wie kann ich das machen ?

    Leave a comment:


  • Melewo
    replied
    Sollte so richtig sein, doch wenn Du die gleich als sql speicherst und importierst, sollte das auch gehen. Habe es mal gerade so probiert zu importieren:

    Code:
    CREATE TABLE IF NOT EXISTS `Testname` (
      `tag`   int(2) DEFAULT NULL,
      `monat` int(2) DEFAULT NULL,
      `jahr`  int(4) DEFAULT NULL,
      `zahl1` int(2) DEFAULT NULL,
      `zahl2` int(2) DEFAULT NULL,
      `zahl3` int(2) DEFAULT NULL,
      `zahl4` int(2) DEFAULT NULL,
      `zahl5` int(2) DEFAULT NULL,
      `zahl6` int(2) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    
    INSERT INTO `Testname` (`tag`, `monat`, `jahr`, `zahl1`, `zahl2`, `zahl3`, `zahl4`, `zahl5`, `zahl6`) VALUES
    (9, 10, 1955, 13, 41, 3, 23, 12, 16),
    (16, 10, 1955, 12, 32, 30, 49, 3, 18),
    (23, 10, 1955, 34, 12, 14, 24, 36, 23),
    (30, 10, 1955, 30, 13, 36, 44, 23, 4),
    (6, 11, 1955, 31, 44, 6, 49, 5, 39),
    (13, 11, 1955, 29, 44, 6, 37, 22, 18);
    Und dann denke daran, jeden Namen für Tabelle oder Felder, den Du änderst, musst Du zweimal ändern, also oben wie unten.

    Leave a comment:


  • Tastatur
    replied
    Ist die csv so richtig geschreiben ?

    tag,monat,jahr,zahl1,zahl2,zahl3,zahl4,zahl5,zahl6
    9,10,1955,13,41,3,23,12,16
    16,10,1955,12,32,30,49,3,18
    23,10,1955,34,12,14,24,36,23
    30,10,1955,30,13,36,44,23,4
    6,11,1955,31,44,6,49,5,39
    13,11,1955,29,44,6,37,22,18
    20,11,1955,27,44,8,16,12,4

    Leave a comment:


  • Melewo
    replied
    Ich habe gerade die Tabelle genommen wie sie ist, mit der Endung .csv abgespeichert und über phpMyAdmin ohne Probleme erst importiert, dann noch einmal exportiert, nur um zu schauen, was aus der Tabelle wurde und daraus wurde halt:

    Code:
    CREATE TABLE IF NOT EXISTS `table 2` (
      `COL 1` varchar(3) DEFAULT NULL,
      `COL 2` varchar(5) DEFAULT NULL,
      `COL 3` varchar(4) DEFAULT NULL,
      `COL 4` varchar(5) DEFAULT NULL,
      `COL 5` varchar(5) DEFAULT NULL,
      `COL 6` varchar(5) DEFAULT NULL,
      `COL 7` varchar(5) DEFAULT NULL,
      `COL 8` varchar(5) DEFAULT NULL,
      `COL 9` varchar(5) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    
    --
    -- Daten für Tabelle `table 2`
    --
    
    INSERT INTO `table 2` (`COL 1`, `COL 2`, `COL 3`, `COL 4`, `COL 5`, `COL 6`, `COL 7`, `COL 8`, `COL 9`) VALUES
    ('tag', 'monat', 'jahr', 'zahl1', 'zahl2', 'zahl3', 'zahl4', 'zahl5', 'zahl6'),
    ('9', '10', '1955', '13', '41', '3', '23', '12', '16'),
    ('16', '10', '1955', '12', '32', '30', '49', '3', '18'),
    ('23', '10', '1955', '34', '12', '14', '24', '36', '23'),
    ('30', '10', '1955', '30', '13', '36', '44', '23', '4'),
    ('6', '11', '1955', '31', '44', '6', '49', '5', '39'),
    ('13', '11', '1955', '29', '44', '6', '37', '22', '18');
    Nun brauchst Du nur noch die Namen für die Felder anpassen und der Tabelle einen Namen geben. Besser wäre es sicherlich, wie hier schon erwähnt varchar durch int zu ersetzen und in der CSV die 'Zeichen' zu entfernen.

    Leave a comment:


  • Tastatur
    replied
    Der Import wurde mir als erfolgreich gemeldet.
    Lediglich die Werte werden mir im PHP Admin als Nullen angezeigt.

    Kann mir jemand mal die Erste Zeile für den Import als Beispiel hier zeigen.

    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4','zahl5','zahl6'
    '9','10','1955','13','41','3','23','12','16'
    '16','10','1955','12','32','30','49','3','18'
    '23','10','1955','34','12','14','24','36','23'
    '30','10','1955','30','13','36','44','23','4'
    '6','11','1955','31','44','6','49','5','39'
    '13','11','1955','29','44','6','37','22','18'

    Leave a comment:


  • jschultz
    replied
    Originally posted by Tastatur View Post
    Ich hab es jetzt als .xls Datei versucht, der Import war erfolgreich, jedoch werden mir wieder nur Nullen angezeigt. Woran liegt das denn?

    Hier ein Auszug aus der .xls Datei

    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4','zahl5','zahl6' '9','10','1955','13','41','3','23','12','16' '16','10','1955','12','32','30','49','3','18' '23','10','1955','34','12','14','24','36','23' '30','10','1955','30','13','36','44','23','4' '6','11','1955','31','44','6','49','5','39' '13','11','1955','29','44','6','37','22','18' '20','11','1955','27','44','8','16','12','4' '27','11','1955','26','37','9','44','46','24'
    Vermutlich hast du in der Datenbank den Datentyp integer verwendet und willst string importieren.

    Dein CSV Format ist sowieso unmöglich.

    1. Die erste Zeile muss weg vorm import
    2. Tag, Monat und Jahr solltest du manuell ändern in folgendes Format: yyyy-mm-dd und das in ein date Feld importieren.
    3. Deine Zahlen sind offensichtlich Ganzzahlen und dementsprechend würde ich die in den Datentyp integer importieren. Die Hochkommata um die Zahlen (außer beim Datum) müssen deshalb aus dem csv File entfernt werden.

    4. Ich würde nicht mit phpmyadmin importieren, sondern mit PHPExcel, aber das ist Geschmackssache. Man kann natürlich auch den pma importer ändern...

    Leave a comment:


  • Tastatur
    replied
    Ich hab es jetzt als .xls Datei versucht, der Import war erfolgreich, jedoch werden mir wieder nur Nullen angezeigt. Woran liegt das denn?

    Hier ein Auszug aus der .xls Datei

    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4','zahl5','zahl6' '9','10','1955','13','41','3','23','12','16' '16','10','1955','12','32','30','49','3','18' '23','10','1955','34','12','14','24','36','23' '30','10','1955','30','13','36','44','23','4' '6','11','1955','31','44','6','49','5','39' '13','11','1955','29','44','6','37','22','18' '20','11','1955','27','44','8','16','12','4' '27','11','1955','26','37','9','44','46','24'

    Leave a comment:


  • Tastatur
    replied
    Originally posted by UzumakiNaruto View Post
    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4'
    '9','10','1955','13','41','3','23','12','16'

    weil ein leerzeichen keine zahl ist und somit INT als datentyp nicht geht.
    Ich habe die zu importierende Datei wie folgt geändert, allerdings ist es jetzt eine .txt Wie kann ich eine .txt in my php admin importieren ?

    So sieht die Datei jetzt aus. Ist eine .txt

    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4','zahl5','zahl6'
    '9','10','1955','13','41','3','23','12','16'
    '16','10','1955','12','32','30','49','3','18'
    '23','10','1955','34','12','14','24','36','23'
    '30','10','1955','30','13','36','44','23','4'
    '6','11','1955','31','44','6','49','5','39'
    '13','11','1955','29','44','6','37','22','18'
    '20','11','1955','27','44','8','16','12','4'
    '27','11','1955','26','37','9','44','46','24'
    '4','12','1955','47','20','31','26','21','5'
    '11','12','1955','10','26','37','8','31','22'
    '18','12','1955','26','8','42','39','36','14'
    '26','12','1955','34','38','42','39','9','5'
    '1','1','1956','38','22','46','4','27','36'

    Leave a comment:


  • Tastatur
    replied
    Die csv Datei ist rund 4000 Zeilen lang.
    Hat jemand eine Idee wie ich die bearbeiten kann, so das diese importfähig wird. Manuelle Bearbeitung ist wegen der Größe ausgeschlossen.

    Hier ein Auszug aus der csv Datei.

    tag monat jahr zahl1 zahl2 zahl3 zahl4 zahl5 zahl6 9 10 1955 13 41 3 23 12 16 16 10 1955 12 32 30 49 3 18 23 10 1955 34 12 14 24 36 23 30 10 1955 30 13 36 44 23 4 6 11 1955 31 44 6 49 5 39 13 11 1955 29 44 6 37 22 18 20 11 1955 27 44 8 16 12 4 27 11 1955 26 37 9 44 46 24 4 12 1955 47 20 31 26 21 5 11 12 1955 10 26 37 8 31 22




    Originally posted by UzumakiNaruto View Post
    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4'
    '9','10','1955','13','41','3','23','12','16'

    weil ein leerzeichen keine zahl ist und somit INT als datentyp nicht geht.

    Leave a comment:


  • UzumakiNaruto
    replied
    'tag','monat','jahr','zahl1','zahl2','zahl3','zahl4'
    '9','10','1955','13','41','3','23','12','16'

    weil ein leerzeichen keine zahl ist und somit INT als datentyp nicht geht.

    Leave a comment:

Working...
X