php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.10.2011, 09:19  
Benutzer
 
Registriert seit: 18.10.2011
Beiträge: 57
PHP-Kenntnisse:
Anfänger
Dark Decipio befindet sich auf einem aufstrebenden Ast
Standard csv in db über mehrere spalten

Hi.

Ich habe eine CSV Datei, die ich in eine datenbank importieren möchte, also mit LOAD DATA INFILE. jedoch befinden setzt sich die eigentliche ausgabe aus lauter joins zusammen. Das Beduetet: Ich besitze zum Beispiel in meiner CSV Datei einen Autor, seine aktuelle Abreit und seinen Wochenbericht (kurz gesagt). Alles mit einem ; getrennt. in meiner DB befinden sich jedoch tbl_autor, tbl_work und tbl_wochenbericht. Alles mit JOINS miteinander verbunden. Wie kann ich jetzt die Inhalte korrekt in die DB schreiben?

MFG.
Dark Decipio ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 25.10.2011, 09:30  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Ich glaub was deine Tabellenverknüpfungen angeht postest du besser die CREATE TABLE-Statements, "verbinden" und "JOIN" passiert erstmal nur auf Abfrage-Ebene nicht auf Datenvorhaltungsebene.
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist gerade online   Mit Zitat antworten
Alt 25.10.2011, 09:35  
Benutzer
 
Registriert seit: 18.10.2011
Beiträge: 57
PHP-Kenntnisse:
Anfänger
Dark Decipio befindet sich auf einem aufstrebenden Ast
Standard

Spielt das eine Rolle für mein Problem`?
Dark Decipio ist offline   Mit Zitat antworten
Alt 25.10.2011, 09:40  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Sicher, wir können davon ausgehen das du keine Wolken hier reintackerst aus denen du dann "warscheinlichkeiten" auf die tatsächliche Datenbankstruktur interpolierst und wir sehen ob dort etwaige FOREIGN KEYS oder andere Verbrechen begangen wurden, könnten schlussendlich auch ausführen wie du ggf. gewisse Sachen optimieren könntest.

Natürlich auf höchst freiwilliger Basis, und auch nur aus dem Grund; da JOINs erstmal wie erwähnt relativ wenig mit Abhängigkeiten zu tun haben.
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist gerade online   Mit Zitat antworten
Alt 25.10.2011, 10:11  
Benutzer
 
Registriert seit: 18.10.2011
Beiträge: 57
PHP-Kenntnisse:
Anfänger
Dark Decipio befindet sich auf einem aufstrebenden Ast
Standard

Ich schildere es mal etwas anders.

(Beispiel)
tbl_autor:
autor_ID, work_ID, name, alter, what ever

tbl_work
work_ID, autor_ID, bericht_ID, name_work

tbl_eochenbericht
bericht_ID, bericht


So in etwa stehen die einzelnen Tabellen in Bezug zueinander.
Dark Decipio ist offline   Mit Zitat antworten
Alt 25.10.2011, 10:17  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

und du hast nun in der CSV Daten drinstehen, die in alle 3 Tabellen "gleichzeitig" sollen ? - dann verabschiede dich von Load Data infile und programmier dir ein anständiges import-Script zum Beispiel in PHP - damit packst du die Daten zuerst in die "unteren" Tabellen - und holst dir mit Last Insert id (bzw der passenden php-funktion) die benutzte auto_increment-ID und kannst die ID dann zusammen mit den anderen Daten für die "höheren" Tabellen verwenden

allerdings solltest du die beiden Tabellen Autor und Work nochmal anfassen - du hast da eine zyklische Beziehung - die mögen DatenbankSysteme normalerweise nicht - außerdem, wie willst du denn verarbeiten, wenn ein Autor mehrere Work-Elemente hat ? doch nicht etwa mit komma getrennt im Feld work_ID abspeichern ?
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste

Geändert von eagle275 (25.10.2011 um 10:20 Uhr).
eagle275 ist offline   Mit Zitat antworten
Alt 25.10.2011, 10:26  
Benutzer
 
Registriert seit: 18.10.2011
Beiträge: 57
PHP-Kenntnisse:
Anfänger
Dark Decipio befindet sich auf einem aufstrebenden Ast
Standard

von diesem "anständigen" PHP-Skript habe ich keine Ahnung, da meine PHP-Kentnisse Anfängerhaft sind.
Ausserdem ist diese DB mit auto usw nur ein Beispiel! Diese DB gibts nicht wirklich! Das war nur ein Beispiel, wie die Ziel DB aussieht. Und der gesamte Inhalt in der CSV wird mit ; getrennt.
Dark Decipio ist offline   Mit Zitat antworten
Alt 25.10.2011, 10:30  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

das ändert aber nix dran - wenn eine CSV Zeile aggregierte Informationen mehrerer Tabellen enthält, kommst du im Regelfall mit einem eigenen Import-Script schneller zum Ziel als mit Load Data infile - zumal du für die Fremdschlüsselbezüge sowieso die IDs der Datensätze aus den anderen Tabellen brauchst ...

Im übrigen komm ich mir langsam verkackeiert vor - tr0y fragt dich nach deinem Tabellen-Aufbau, Du zeigst einen - und wenn man auf den Bezug nimmt, heißt es auf einmal ätsch .. angeschmiert - war nur ein Beispiel ....

Wenn du konkrete Hilfestellung erwartest, dann poste bitte KONKRETE Daten zu deinem Problem - ein aus der Luft gegriffenes Beispiel tut es NICHT
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 25.10.2011, 10:48  
Benutzer
 
Registriert seit: 18.10.2011
Beiträge: 57
PHP-Kenntnisse:
Anfänger
Dark Decipio befindet sich auf einem aufstrebenden Ast
Standard

Tut mir Leid wenn du dir so vorkommst, war nicht die Absicht weshalb ich sogar noch Beispiel hingeschrieben habe...?!

Die Original Datei sowie DB ist sehr gross, und zuerst dachte ich, es gäbe eine allgeiemine Lösung weshalb ich die Art der Bezüge in einem BEISPIEL darstellte. Also war das falsch. Sorry.
Dass ich ein eigenes Script schreiben muss, habe ich bisher verstanden. Danke. Jedoch habe ich mit meinen grossartigen PHP-Kentnisse keine Ahnung wie ich das Anstellen soll. Und ich denke nicht dass es wirklich sinnvoll ist, meine gesamte DB hier zu beschreiben. Deshalb sag mir bitte kurz, welche notwendigen Daten du benötigst.

Sorry und VIELEN DANK an beide für die Hilfe und vor allem GEDULD
Dark Decipio ist offline   Mit Zitat antworten
Alt 25.10.2011, 11:00  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Include mal lesen.php und führ
PHP-Code:
lesen::activateLanguage(array('deutsch''suhaeli''tr0y')); 
aus

danach nimm dir nochmal meine beiträge vor, irgendwas lief da schief oder benötigt deinerseits mehr kaffee intus
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist gerade online   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
Bilder aus Spalten in Zeilen anzeigen Typ15 PHP Tipps 2010 5 31.03.2010 21:46
[Erledigt] MySQL count(distinct) über mehrere Spalten mit GROUP BY Problem DJwebdesign Datenbanken 6 06.03.2010 16:05
Mysql: abfrage über 2 spalten luks2com PHP Tipps 2010 10 28.01.2010 15:28
Group by über 10 spalten t10 Datenbanken 6 18.01.2010 18:55
[Erledigt] INSERT ... SELECT - nicht alle Spalten aus dem Select benutzen? kip Datenbanken 4 01.09.2009 13:06
Projekt: User über Intranetpage erstellen, auf einen VoIP-Server beta1234 PHP Tipps 2009 2 22.07.2009 13:21
Datenbankabfrage über Suchfunktion SanktFlorian Datenbanken 6 09.07.2009 16:15
messwerte über php aus text dokument mit spalten auslesen? holger456 PHP Tipps 2009 3 01.04.2009 10:45
[Erledigt] Einzelnen DB-Eintrag über ID anzeigen Knutschi PHP Tipps 2009 6 26.03.2009 09:56
Doppelte Einträge in tabelle über mehrere Spalten anzeigen PHP Tipps 2005-2 8 22.07.2005 09:29
Mehre Abfragen über Spalten mit LIKE PHP Tipps 2005-2 19 13.07.2005 00:10
suche über zwei oder mehr spalten Datenbanken 1 28.11.2004 09:51
Javascript über Javascript erstellen HTML, Usability und Barrierefreiheit 2 19.11.2004 18:02
[Erledigt] Auto Increment über 2 Spalten Datenbanken 2 21.09.2004 19:52

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
csv to db, php csv doppelte einträge, csv db, .csv to .db

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:19 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