tutorials.de Buch-Aktion 05/2012
Like Tree4Danke
  • 1 Beitrag von tombe
  • 1 Beitrag von Yaslaw
  • 1 Beitrag von Maniac
  • 1 Beitrag von tombe
ERLEDIGT
JA
ANTWORTEN
11
ZUGRIFFE
344
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    Hallo liebe Freunde der Sonne ,
    ich habe manchmal Ideen die am Anfang scheinen leicht zu sein -> draus folgt das die am Ende immer schlimmer und schlimmer werden .
    Ich habe mir vorgenommen einer Bücherei (in kleiner Gemeinde ) zu helfen, da die Ihre Bücher immer noch auf den Kärtchen haben und jedes mal alles von der Hand eintragen müssen.

    IFNO VOR AB
    ! ich bin Anfängern i php und mysql !

    Habe mir gedacht das ich mir als ersten 5 verschiedene Tabellen in einer Datenbank erstellen werde .
    1. Bücher Tabelle = bücher habe eine 4 stellige ID (zahlen & buchstaben)
      Person Tabelle = Personen werden eine 5 stellige ID kriegen ( zahlen )
      Ausgabe am ( timestamp ausgabe zeit ) Tabelle
      Rückgabe am ( timestamp gekrigt am zeit ) Tabelle
      Verarbeitung Tabelle

    Bücher Tabelle (spalten)
    -id-name des buches

    Personen Tabelle (spalten)
    -id-name-vorname-

    Ausgabe am Tabelle (spalten)
    -zeit Timestamp - (weiter brauche ich Hilfe bei der Logik )

    Rückgabe gekriegt am Tabelle (spalten)
    -zeit Timestamp - (weiter brauche ich hilfe bei der Logik )

    Verarbeitung Tabelle
    so jetzt kommen wir zu meiner Problem Tabelle!
    -hier will ich eine Verarbeitung Tabelle erstellen
    -in der muss ich die Sachen von der Bücher Tabelle, Personen Tabelle , Ausgabe zeit und die Rückgabe Zeit bearbeiten können

    Mein Problem ist das ich nicht weiß ob meine Logik bei der Aufstellung der Tabellen richtig ist und wenn ja dann welche Spaltennamen ich für die Tabellen Ausgabe und Rückgabe noch einfügen soll!

    Es soll noch die Möglichkeit geben den Timestamp der Tabelle Rückgabe zu verändern, wenn der Kunde das buch noch z.b. eine Woche lang Lesen will.

    Ich brauche die Hilfe bei der Aufstellung der Logik und die Verbindung von mehreren Tabellen der Datenbank.

    Danke im Voraus.

    PS. Wenn Grammatik Fehler da sind sorry wohne nicht lange hier
    Gruß Aleks
     

  2. #2
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Tabelle Bücher
    - Nummer (eignene Nummer der Bücherrei)
    - ISBN Nummer (wäre vielleicht ganz nützlich)
    - Titel
    - Autor

    Tabelle Kunden
    - Nummer
    - Vorname
    - Nachname
    - Strasse
    - Postleitzahl
    - Ort
    - Telefon
    - Geburtsdatum (falls es FSK ab 18 Bücher oder so etwas gibt)

    Tabelle Verarbeitung
    - Buchnummer
    - Von
    - Bis
    - Kundennummer

    Das sollte doch eigentlich reichen, wobei es sicher noch einige Felder geben dürfte die nützlich wären.
    Beispielsweise die Altersfreigabe, oder ein Sperrvermekr beim Kunden wenn er schon mehrmal Bücher nicht pünktlich abgegeben hat, oder, oder, oder.

    Wie du die Felder nennst, bleibt dir überlassen. Die Namen sollten halt klarmachen wofür sie stehen. Bei der Tabelle "Verarbeitung" könntest du eventuell noch ein Feld "Status" (0 = verliehen - 1 = reserviert) aufnehmen.
    andreano bedankt sich. 
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  3. #3
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ich würde es über 3 Tabellen lösen

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    [buecher]
    id   | titel
    -------------
    1234 | Buch 1
    1765 | Buch 2
    5897 | Buch 3
     
    [kunden]
    id  | familienname
    ------------------
    32  | Kunde 1
    25  | Kunde 2
    240 | Kunde 3
    234 | Kunde 4
     
    [ausleihe]
    buch_id | kunde_id | ausleihe   | rueckgabe
    --------------------------------------------
       1234 |       32 | 2011-10-26 | NULL           //Buch 1234 ist noch ausgeleihen
       1765 |      234 | 2011-09-25 | 2011-10-15     //Buch 1765 ist wieder zurück


    Hier einige einfache Beispiele wie man das Konstrukt nachher auswerten kann

    Herausfinden welche Bücher ausgeleihen sind (und bei wem)
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    SELECT
        buecher.id,
        buecher.titel,
        kunde.familienname
    FROM
        ausleihe
        INNER JOIN buecher
            ON ausleihe.buch_id = buecher.id
        INNER JOIN kunden
            ON ausliehe.kunde_id = kunden.id
    WHERE
        ausliehe.rueckgabe = NULL;

    Herausfinden welche Bücher länger als ein Monat ausgeliehen sind
    Code sql:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    SELECT
        buecher.id,
        buecher.titel,
        kunde.familienname
    FROM
        ausleihe
        INNER JOIN buecher
            ON ausleihe.buch_id = buecher.id
    WHERE
        ausliehe.rueckgabe = NULL
        AND DATEDIFF(NOW(), ausleihe.ausliehe) > 31;
    andreano bedankt sich. 
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  4. #4
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    Wow Danke tombe, Yaslaw
    so eine schnell Antwort habe ich nicht erwartet! und eure Lösungen mit 3 Tabellen sind mir auch erst sehr spät eingefallen.
    Zitat Zitat von tombe
    Geburtsdatum (falls es FSK ab 18 Bücher oder so etwas gibt)
    in meinem Fall wird es nicht gebraucht, weil es so was nicht gib.
    Aber wenn mann es in der Großen Bücherei verwenden wollte sollte man wirklich ALLE deine angaben Beachten.

    Yaslaw du hast Gewonnen ,
    ich werde dein Lösung mir als Denkanstoß vornehmen und es verwenden!
    Aber auch einige Sachen von dem tombe werde ich auch übernehmen z.B.
    Zitat Zitat von tombe
    "Status" (0 = verliehen - 1 = reserviert)
    Noch mal DANKE

    Gruß Aleks
     

  5. #5
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    Yaslaw frage wie Fügt mann die Kunde_id und gleichzeitig buch_id in eine Tabelle?
    Ich soll die angaben doch aus den Vorherigen Tabellen entnehmen.
    Kann ich vll. noch ein code-schnipsel der das macht von dir haben?

    Danke im Voraus

    Gruß Aleks
    Geändert von andreano (27.10.11 um 13:07 Uhr)
     

  6. #6
    Avatar von Maniac
    Maniac Maniac ist offline Mitglied Smaragd
    Registriert seit
    Apr 2007
    Ort
    Augsburg/Gersthofen (Bayern)
    Beiträge
    1.204
    Code sql:
    1
    
    INSERT INTO `tabelle` (`kunde_id`,`buch_id`) VALUES ('1234','12345)

    WEnn ich dich richtig verstanden habe.
    andreano bedankt sich. 
    Die Schweine von heute sind unsere Schnitzel von morgen!

  7. #7
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Na zuerst wählst du ja das Buch irgendwie aus, die Nummer steht dann z.B. in einem Textfeld. Dann gibst du die Kundennummer ebenfalls in ein Textfeld ein (oder wählst sie aus einer Liste aus).

    Wenn alles erfasst ist, schickst du das Formular ab und diese beiden Werte übernimmst du dann in die SQL-Anweisung.

    PHP-Code:
    $buch mysql_real_escape_string($_POST["buch_nummer"]);
    $kunde mysql_real_escape_string($_POST["kunde_nummer"]);

    $sql "INSERT INTO tabelle (buch, kunde) VALUES('" .$buch ."', '" .$kunde ."')"
    andreano bedankt sich. 
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  8. #8
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    Für den Anfang habe ich genug info!
    DANKE an alle beteiligten!

    Ps. Frage wenn ich jetzt den Thead schließe und dann später noch ein frage habe kann ich den wieder aufmachen?
    Oder muss ich ein neues erstllen?
     

  9. #9
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Also wenn das hier erledigt ist, würde ich später einen neuen Beitrag aufmachen. Dort eventuell einen Link zu diesem Beitrag wenn es hilft.
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  10. #10
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    Zitat Zitat von tombe Beitrag anzeigen
    Also wenn das hier erledigt ist, würde ich später einen neuen Beitrag aufmachen. Dort eventuell einen Link zu diesem Beitrag wenn es hilft.
    Wieso ein neun Beitrag?
    Verstehe dich im Moment nicht?
     

  11. #11
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Wie du verstehst das nicht. Ist doch die Antwort auf deine Frage.

    Wenn hier in diesem Beitrag alle Fragen beantwortet wurden, dann markieren ihn als erledigt.

    Wenn du morgen, in einer Woche, in einem Monat (oder auch in 10 Minuten) eine neue/andere Frage hast, dann würde ich an deiner Stelle einen neuen Beitrag erstellen da es dann ja um eun neues/anderes Thema geht.
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  12. #12
    andreano andreano ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Ort
    Nähe Köln (NRW)
    Beiträge
    46
    so jetzt habe ich es VERSTADEN !

    haha Also Thema CLOSE

    Danke an Alle beteiligten!
     

Ähnliche Themen

  1. VB.NET mehrere Klassen verknüpfen
    Von 123bernie123 im Forum .NET Datenverwaltung
    Antworten: 6
    Letzter Beitrag: 11.01.11, 14:53
  2. MySQL - Tabellen für mehrere Werte verknüpfen
    Von darkpriest im Forum Relationale Datenbanksysteme
    Antworten: 9
    Letzter Beitrag: 12.06.09, 20:30
  3. Mehrere Tabellen verknüpfen
    Von tiede im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 30.10.08, 21:22
  4. Mehrere Tabellen verknüpfen
    Von Erks im Forum Relationale Datenbanksysteme
    Antworten: 11
    Letzter Beitrag: 25.01.08, 14:35
  5. Mehrere Tabellen verknüpfen
    Von Erks im Forum PHP
    Antworten: 2
    Letzter Beitrag: 24.01.08, 17:30

Stichworte