SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQL/MySQLi

MySQL/MySQLi Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQL/MySQLi diskutieren

Thema geschlossen
 
Themen-Optionen Ansicht
  #11  
Alt 18.09.2013, 21:46:34
loddoking loddoking ist offline
Anfänger
 
Registriert seit: Sep 2013
Alter: 41
Beiträge: 14
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von vt1816 Beitrag anzeigen
Hier hast Du das Prinzip noch immer nicht verstanden. Mehr als die DREI beschriebenen Tabellen benötigst Du nicht (- bei den Informationen die uns bisher vorliegen). Ob es sich um meinen Film oder eine Serie oder ein Blockbuster und sonstige Kategorie handelt, kannst Du in der in der FILM-Tabelle mit ablegen oder gleich eine 4. Tabelle (Kategorien) aussortieren und alles wieder über Schlüssel (*_ID) miteinander verbinden.
Bei den anderen "Kategorien" handelt es sich um eigenständige Tabellen mit zum teil sehr unterschiedlichen Spalten.
Da lässt sich so einfach nicht alles zusammenlegen in einer rießigen Einzeltabelle.
Aber das ist ja hier noch nicht so von belang. Erst einmal muss das ganze ja mit den zwei Darsteller/Film Tabellen funktionieren.
Daran mach ich mich ersteinmal.
Wenn das dann soweit klappt wird wohl das erweitern um weitere Tabellen mit den anderen "Kategorien" ja nur noch ein wenig fleißarbeit erfordern.

Aber wie ich am ende die Film_Besetzungstabelle automatisch mit der Film_ID & Darsteller_ID befülle weiß ich immer noch nicht.
  #12  
Alt 18.09.2013, 22:00:44
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.680
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von loddoking Beitrag anzeigen
[..]
Die Datensätze die ich importieren möchte liegen nunmal in eben dieser Form in den csv Files vor.
Also, die einzelnen Darsteller zum Film in Spalten. Ich habe keine vorstellung wie man das nun umdrehen könnte das daraus zeilen werden.
Abgesehn davon führt das doch zu einer ungeheuren menge an zusätzlichen Datensätzen in der Tabelle Besetzung.

Zitat:
Zitat von loddoking Beitrag anzeigen
[..]
Aber wie ich am ende die Film_Besetzungstabelle automatisch mit der Film_ID & Darsteller_ID befülle weiß ich immer noch nicht.
Um hier nicht weiter im Nebel zu stochern wäre es gut wenn Du mal 3-5 Zeilen aus der (den) csv-Datei(en) posten würdest.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
  #13  
Alt 18.09.2013, 22:39:01
loddoking loddoking ist offline
Anfänger
 
Registriert seit: Sep 2013
Alter: 41
Beiträge: 14
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von vt1816 Beitrag anzeigen
Um hier nicht weiter im Nebel zu stochern wäre es gut wenn Du mal 3-5 Zeilen aus der (den) csv-Datei(en) posten würdest.
Ich glaub da hab ich mich missverständlich ausgedrückt.
Mit "Aber wie ich am ende die Film_Besetzungstabelle automatisch mit der Film_ID & Darsteller_ID befülle weiß ich immer noch nicht."
meinte ich die Dateneingabe am Ende wenn alles so aufgebaut ist wie Vorgeschlagen und die Datensätze auch alle eingebaut sind.
Die Datenbank will ja gelegentlich mit neuem gefüttert werden.

Ich hane ja diese Film_Besetzungstabelle als verknüpfung. Aber die Werte darin sind ja keine auto_increment werte sondern stammen von den Ursprungstabellen die da wären Filme und Darsteller. Diese beiden Tabellen kann ich ja auch so befüllen mit neuen Datensätzen, die benötigten neuen IDs werden ja per auto_increment praktischerweise automatisch erzeugt.
Meine Frage ist, wie bekomme ich diese neuen IDs dann in die Film_Besetzungstabelle. Da muss ja für jeden neunen Datensatz in der Film und/oder Darstellertabelle, sofern ein bezug zum jeweils anderen besteht erfolgen oder?

Wie ich das mit den bestehenden Datensätzen die ich über die csv files importiert habe nun in die Film_Besetzungstabelle mit zwei Spalten hinbekomme hab ich mir schon zurechtgelegt und mit nem paar dutzend datensätzen auch schon ausprobiert. Der rest ist nur ein wenig fleißarbeit. Der aufbau der Film_Besetzungstabelle ist also insofern kein Problem mehr.
  #14  
Alt 18.09.2013, 23:36:32
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.680
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von loddoking Beitrag anzeigen
[..]
Die Datenbank will ja gelegentlich mit neuem gefüttert werden.
Wo ist hier Dein Problem?

Die beiden Tabellen (Film & Schauspieler) werden jeweils einzeln per Formular bzw. per Import gefüllt. Und wenn die Datensätze hinzugefügt sind kann dann mittels der jeweilgen *_IDs die Verknüpfungstabelle (via Formular o.ä.) gefüllt werden.


Oder?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
  #15  
Alt 19.09.2013, 00:23:13
loddoking loddoking ist offline
Anfänger
 
Registriert seit: Sep 2013
Alter: 41
Beiträge: 14
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von vt1816 Beitrag anzeigen
Um hier nicht weiter im Nebel zu stochern wäre es gut wenn Du mal 3-5 Zeilen aus der (den) csv-Datei(en) posten würdest.
Zitat:
Zitat von vt1816 Beitrag anzeigen
Wo ist hier Dein Problem?

Die beiden Tabellen (Film & Schauspieler) werden jeweils einzeln per Formular bzw. per Import gefüllt. Und wenn die Datensätze hinzugefügt sind kann dann mittels der jeweilgen *_IDs die Verknüpfungstabelle (via Formular o.ä.) gefüllt werden.


Oder?
Im prinzip is das schon klar.
Da meine Kentnisse der Materie nun schon ein weinig eingerostet is muss ich halt bei so kleinigkeiten ein wenig nachhacken wenn ich nachher nicht zehnmal soviel arbeit damit haben will um kleine Fehler mit großer wirkung auszubügeln. Sorry also wenn ich da n bissel nervig nachhacke.

Das man die Verknüpfungstabelle mit externen mitteln über ein php Frontend bei der Datensatzeingabe mit befüllen kann werd ich mir noch denken können.
Da sind ja praktisch alle möglichkeiten offen.

Wenn es da aber Datenbankintern eine automatische lösung gibt hab ich sie noch nicht gefunden. Da müsst ich schon genauere Hinweise bekommen wie das geht. So dass automatisch bei der erzeugung einer neuen Darsteller_ID / Film_ID ein Vergleich in der Besetungstabelle stattfindet und dementsprechen ein neuer Datensatz eingefügt wird.
  #16  
Alt 19.09.2013, 08:18:30
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Hi,

Zitat:
Datenbankintern eine automatische lösung
Mir nicht bekannt, denke da wirst du ne Scriptsprache brauchen.

Also da du uns ja keine Datei mit Aufbau zeigst, rate ich mal weiter.
Ohne Scriptsprache (Handarbeit):
Du hast 2 Dateien (CSV) eine mit Darstellern (id,bla,blubb) und eine mit Filmen (id,bla,blubb,darsteller_ids...).
Du importierst die Darsteller und dann die Filmdatei (ohne darsteller_ids).
Danach machst du (leider) 70 import Dateien jeweils erste Spalte der Filmcsv und als zweite
jeweils eine der darsteller_ids.

Fertig ;)

MfG

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
  #17  
Alt 19.09.2013, 10:06:41
loddoking loddoking ist offline
Anfänger
 
Registriert seit: Sep 2013
Alter: 41
Beiträge: 14
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von Ckaos Beitrag anzeigen
Hi,

Du importierst die Darsteller und dann die Filmdatei (ohne darsteller_ids).
Danach machst du (leider) 70 import Dateien jeweils erste Spalte der Filmcsv und als zweite
jeweils eine der darsteller_ids.

Fertig ;)

MfG

CKaos
Jo, das wäre eine möglichkeit an die ich zuerst gedacht habe.
Wenn es nur um diese eine Tabelle ginge würd ich das auch genauso machen.
Brauch aber für später einen besseren Workflow...

Die andere wäre etwa so ähnlich:

Code:
INSERT INTO `film_besetzung` ( `Film_ID` , `Dartsteller_Id` )
SELECT `filme`.`Film_ID`, `darsteller`.`Darsteller_ID`
FROM `darsteller`
LEFT JOIN `filmdatenbank`.`filme` ON `darsteller`.`Darsteller_ID` = `filme`.`Darsteller_Id_1`
Wobei ich dann die `filme`.`Darsteller_Id_1` einfach bei jedem durchlauf um eins erhöhe. Left Join verursacht hierbei leider zuviel unnötige NULL Zellen in der Film_ID Spalte.
Ich werd da n anderen Join nehmen müssen und dann das ganze so zusammenfummeln dass ich alle 70 Spalten automatisch abklappere nacheinander.
Aber das Prinzip funktioniert soweit. Sicher gibt es aber auch noch elegantere (und kompliziertere ;)) methoden.


Vielen Dank aber schonmal an alle die sich bisher hierbei beteiligt haben. Ich wär sonst bestimmt nicht so schnell auf die möglichen Lösungsansätze gekommen.
  #18  
Alt 19.09.2013, 21:18:28
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 72
Beiträge: 4.001
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von loddoking Beitrag anzeigen
Was mir aber Bauchschmerzen verursacht ist die spätere Dateneingabe wenn ich es mit rund 7 Tabellen (1 Darsteller + 6 verschiedene Film, Serien usw..) zu tun habe. Dazu kommen ja dann nochmal 6 Besetzungstabellen.
Verwende den Datentyp SET für die Kategorie. Dann bleibts bei 3 Tabellen.
Für Serien oder Fortsetzungen von Filmen solltest Du eine weitere Spalte vorsehen. Type varchar:
Code:
S1E17
Zitat:
Wie man aber nun bewerkstelligt dass die zugehörigen Besetzungstabellen automatisch mit den richtigen Werten befüllt werden!?
Na entweder verwendest Du ein Formular oder Du suchst Dir den Kram aus den CSV Files zusammen.
Zitat:
Es muss ja dann jedesmal ein zweispaltiger Datensatz aus den zwei IDs erstellt werden die per auto_increment in den Ursprungstabellen erzeugt wurden.
MySQL is dazu ein büschen zu blöde und hat keine bzw. nur eine dürftige interne Programmiersprache. Wesentlich besser wäre da PostgreSQL geeignet. Gibts für Linux und für Windows. Favorit wäre da pl/pgsql
http://www.postgresql.org/docs/9.3/i...e/plpgsql.html
Damit kannste jede Menge PHP einsparen.
Zitat:
So wie ich es ja verstanden habe muss ja bei jedem neuen datensatz in den Darsteller und/oder Film/Serie... Tabellen ja auch ein neuer Datensatz in einer oder mehreren Besetzungstabellen. Es sei denn natürlich der Darsteller/Film enthält keine weiteren in bezug stehenden Daten.
Na Du guckst erst mit SELECT nach, ob Du den Darsteller schon hast und läßt Dir die ID liefern. Falls es ihn nicht gibt, dann machste ein INSERT.
  #19  
Alt 19.09.2013, 22:05:14
loddoking loddoking ist offline
Anfänger
 
Registriert seit: Sep 2013
Alter: 41
Beiträge: 14
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von meikel Beitrag anzeigen
Verwende den Datentyp SET für die Kategorie. Dann bleibts bei 3
SET werde ich mir auf jeden Fall nochmal genauer anschauen.
Aber bei den verschiedene Kategorie Tabellen hülft alles nix. Derren IDs würden sich bei einer zusammenlegung doppeln und wären somit als eindeutiges identifizierungsmerkmal unbrauchbar. Ich müsste die ID dann mit der Kategorie einen zweispaltigen Primärschlüssel machen. Das würde zwar gehen. Aber macht die sache nur unnötig kompliziert.

Es handelt sich halt um mehrere zum teil sehr verschieden Tabellen mit unterschiedlichen Spalten und anordnungen. Da alles zu einem rießigen Brei zusammenzumixen wäre gegenwärtig kontraproduktiv.

Aber ich behalte diese Überlegung im Auge im zuge der Normalisierung und wenn ich etwas mehr in der Materie drin bin.

Bis auf weiteres sollte ich also auch so weitekomen mit dem aufbau der Datenbank. Ich meld mich mit sicherheit wieder wenn es zb um das PHP Frontend geht. Da hab ich nämlich noch weniger Kenntnisse ;)
  #20  
Alt 19.09.2013, 22:49:44
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 72
Beiträge: 4.001
AW: MySQL - Filmdatenbak - Filmtitel/Darsteller Abfrage

Zitat:
Zitat von loddoking Beitrag anzeigen
Aber bei den verschiedene Kategorie Tabellen hülft alles nix. Derren IDs würden sich bei einer zusammenlegung doppeln und wären somit als eindeutiges identifizierungsmerkmal unbrauchbar.
Genau das ist ja eins Deiner Probleme: Du willst ein schlechtes Konzept aufbohren. Besser wäre es, den Kram in ein korrektes DB Design zu importieren. Klar macht das Arbeit, ein Script zu schreiben, was man nur einmal braucht, um die Designfehler auszubügeln.
Zitat:
Es handelt sich halt um mehrere zum teil sehr verschieden Tabellen mit unterschiedlichen Spalten und anordnungen. Da alles zu einem rießigen Brei zusammenzumixen wäre gegenwärtig kontraproduktiv.
Falsch. Momentan haste nicht nur einen Breitopf sondern mehrere Töppe, in denen nur Brei gekocht wird.
Zitat:
Aber ich behalte diese Überlegung im Auge im zuge der Normalisierung und wenn ich etwas mehr in der Materie drin bin.
Du kennst doch den Spruch: "Nichts ist haltbarer als ein Provisorium."
Warum sträubst Du Dich so vehement dagegen, es ausnahmsweise mal richtig anzupacken? Genug Tips gabs ja mittlerweile.
Zitat:
Bis auf weiteres sollte ich also auch so weitekomen mit dem aufbau der Datenbank.
Mit Deinem miesen Konzept wirste nicht viel Freude haben.
Zitat:
Ich meld mich mit sicherheit wieder wenn es zb um das PHP Frontend geht. Da hab ich nämlich noch weniger Kenntnisse ;)
Dann lies die Handbücher und die betreffenden FAQ.
Thema geschlossen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Brauche Hilfe Partygirl MySQL/MySQLi 10 01.03.2011 09:18:11
Ergebnisse aus MySQL Abfrage, obwohl Abfrage eigentlich leer mauritius MySQL/MySQLi 1 15.09.2010 16:16:30
MySQL Abfrage innerhalb einer Abfrage HariboGold MySQL/MySQLi 4 27.08.2008 18:00:28
Problem mit MySQL IF Abfrage und 0 bzw. NULL Wert flashsurface MySQL/MySQLi 2 15.06.2008 22:21:09
MySQL Abfrage mit PHP ausgeben, wie? PHP-MySQL-Fan MySQL/MySQLi 5 22.05.2006 15:47:23


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:38:46 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt