Re(2): SQL Anfängerfrage
Geizhals » Forum » Programmierung » SQL Anfängerfrage (10 Beiträge, 418 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
SQL Anfängerfrage
04.03.2017, 19:54:12
Abend, ich hab eine SQL Anfängerfrage. Da ich Anfänger bin hoffe ich mal das ich überhaupt in der Lage bin alle Infos zu geben die nötig sind um meine Frage zu beantworten.

Ich hab mir div Beispiele angeschaut, Video2Brain Video angeschaut, klappt auch alles ganz gut solange man mit den Beispieldatenbanken arbeitet - die wohl so ausgelegt sind das alles recht einfach und übersichtlich bleibt und keine großen Probleme auftreten.

Ich will nun aber mit einer vorhandenen Datenbank ein bissl rumspielen und habe Probleme div Beispiele auf diese meine Datenbank "umzulegen" und ich hoffe ihr könnt mir dabei etwas helfen.



Was will / habe ich:


Ich habe zwei Tabellen, eine nennt sich "Slides", eine weitere nennt sich "Protocols".

In der Slides Tabelle sehe ich welche Slides mit welchem Protokoll abgearbeitet wurden wobei das Protokoll nur mit seiner "ProtokollID" angezeigt wird die natürlich wenig aussagt da es sich einfach um eine Nummer handelt.

In der Protocols Tabelle sehe ich die ProtokollIDs und die dazugehörigen, realen, Namen der Protokolle.


Ich würde aber nun gerne eine Abfrage erstellen die bei jedem Slide die realen Protokollnamen und die Protokoll IDs aus beiden Tabellen anzeigt.

Ich will nun also die Tabelle SLIDES mit der Tabellen PROTOKOLLS verbinden und alle Slides in Verbindung mit dem Realnamen der verwendeten Protokolle sichtbar machen.

Also habe ich mir gedacht (und lacht nun bitte nicht, eh scho wissen, Anfänger) ich verwende INNER JOIN.




Folgende Abfrage habe ich nun erstellt:

SELECT PC.ProtocolID AS 'ProtocolID aus Protocols-Tabelle'
            SL.ProtocolID AS 'ProtocolID aus Slides-Tabelle'
            PC.Name
FROM    Slides.Slide SL INNER JOIN Protocols.Protocol PC ON SL.ProtocolID = Name



So, die Fehlermeldung:

Conversion failed when converting from a a character string to uniqueidentifier.


verwendete Datentypen

Die "ProtocolID" in der Slides.Slide Tabelle hat als Datentyp "uniqueidentifier".
Die "ProtocolID" in der Protocols.Protocol Tabelle hat als Datentyp "uniqueidentifier".
Der "Name" in der Tabelle Protocols.Protocol hat als Datentyp "nvarchar(50)


Ist meine Angabe soweit  verständlich das meine Frage beantwortet werden kann oder fehlen Informationen? Was muss ich nun wo eingeben um mein Ziel zu erreichen? Ist meine Angabe verständlich?









04.03.2017, 19:56 Uhr - Editiert von User545539, alte Version: hier
Antworten PM Alle Chronologisch
 
Melden nicht möglich
.  Re: SQL Anfängerfrage
 (TuxTux am 04.03.2017, 19:59:43)
..  Re(2): SQL Anfängerfrage
 (User545539 am 04.03.2017, 20:01:50)
...  Re(3): SQL Anfängerfrage  (TuxTux am 05.03.2017, 11:01:35)
.  Re: SQL Anfängerfrage  (Somnatic am 04.03.2017, 20:08:08)
..
Re(2): SQL Anfängerfrage
04.03.2017, 20:17:22
Du bist auf dem richtigen Weg.


...aber der ist steinig *gg*

danke für deine Ausführungen...ich bin im Moment dabei div Beispiele aus dem Lernmaterial auf meine vorhanden Datenbank umzulegen und da gibt's immer wieder kleinere und größere Probleme.

Div Testdatenbanken sind übersichtlich, die Spaltenbezeichnungen sind gut "lesbar", man kann sich recht schnell was vorstellen unter den vorhandenen Daten. Es sind oft nur wenige Datensätze enthalten, alles ist übersichtlich....

Bei meiner Datenbank die ich nun verwende handelt es sich um die DB eines med. Diagnostikgerätes meiner Firma. Da sind div Bezeichnungen verwirrend(er), es ist schwerer zu überblicken und dass dann, in Verbindung mit meinem nicht vorhandenen Wissen machts schwer.

Ich bin an diesem Problem schon länger gesessen weil in meinem Lernmaterial erst VIEL SPÄTER erklärt wurde wie ich mit gleichen Spaltennamen umgehen muss, nämlich durch Angabe der Tabelle, am besten in Form von Tabellenaliasnamen. Also alleine rauszufinden wieso die Abfrage  zu Beginn überhaupt nicht funktioniert hat hat viel Zeit gekostet.

Das Gute: es macht mir Spaß...


Womit wollen wir die Tabelle Slides Joinen? Mit Protocols, also


hier war wohl mein Denkfehler, ich dachte wenn ich die ProtokollID aus der Tabelle Slides mit den Realnamen, die in der Tabelle Protocols hinterlegt sind, verbinden will muss ich dazu auch die Spalte NAMEN der Protocols Tabelle verwenden. Und da lag ich offenbar falsch :-~(

Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
...  Re(3): SQL Anfängerfrage  (Somnatic am 04.03.2017, 20:28:45)
....  Re(4): SQL Anfängerfrage  (User545539 am 04.03.2017, 20:30:41)
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung