Zum Inhalt springen

SQL Grundverständniss


Gurrnder

Empfohlene Beiträge

Hallo.

Ich habe mich hier grad Angemeldet, bin also Frischfleisch.

Um meine Ausbildung zu beenden, ist es wichtig für mich, dass ich ein Praktikum in einer anderen Firma absolviere. Für die aufnahme in ein Praktikum werde ich jetzt von einer Firma geprüft. Da wir SQL nur ganz kurz angeschnitten hatten und das auch noch ne weile her ist, dachte ich ich such mir mal ein Forum wo ich notfalls nachfragen kann.

Die aufgabe ist Folgende:

- Eine Excel-AdressDatei in die tabelle i_Adressimport einspeisen.

- Überprüfen ob ein Eintrag in den Tabellen KUNDEN, LIEFERANTEN und VTAdressen vorhanden ist.

- Falls er es nicht ist soll ich ihn er Tabelle Z.Adressen Hinzufügen ansonsten ignorieren

Soweit so gut.

Für einzelne Einträge wäre das kein Problem. Jedoch ist es eine ganze Liste und ich soll das Automatisieren, so dass man nur das Script drüberlaufen lassen muss.

Die Grundsatzfrage die ich nun habe sind:

- Kann ich das mit SQL alleine realisieren, oder brauch ich dazu noch eine andere Sprache? (Kann ich mich der reihe nach durch eine liste arbeiten und abfragen im Stile von "if/else" verzweigungen machen)

Da ich mich gerade ins Thema ein arbeite werde ich dieses Thema bestimmt weiterführen und noch weitere frage (der realisierung) stellen.

Ansonsten danke ich für die Arbeit euch das durchgelesen zu haben.

mfg

Gurrnder

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das dürfte mit SQL alleine möglich sein

- Eine Excel-AdressDatei in die tabelle i_Adressimport einspeisen.

-> geht recht einfach nach Access zu importieren

- Überprüfen ob ein Eintrag in den Tabellen KUNDEN, LIEFERANTEN und VTAdressen vorhanden ist.

-> Hier würde ich ich eine Abfrage erstellen die die 3 Tabellen zusammenfasst (Stichwort: UNION, Abfrage auf eine Abfrage in Access)

-> Eventuell noch eine Unterabfrage um die Sätze anzuzeigen die du Einfügen möchstest

- Falls er es nicht ist soll ich ihn er Tabelle Z.Adressen Hinzufügen ansonsten ignorieren

-> Mit select ... into die neuen Adressen in die Zieltabelle schreiben

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke für die schnelle Antwort.

Das Problem ist, dass auf dem System kein MS Access installiert ist und ich auch keines installieren darf. Ich muss mit den vorhandenen sachen zurecht kommen.

Die SW mit der ich Arbeiten kann, nenn sich SQL-Business_PE und wird auch tatsächlich produktiv eingesetzt.

Zum Import: den soll ich direkt in der Mgmt-Console machen ... Mgmt = Management? Ist das etwas offizielles das man kennen sollte oder doch eher ein teil der SQL-Business_PE SW?

Ich habe mir gedacht das ich das ganze wenn es denn funktioniert in eine Batch datei schmeisse und das ganze ausführbar mache ... sofern das mit SQL code mäglich ist.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmm ... sorry aber ich hab die Editier funktion irgendwie nicht gefunden.

Ich wollte mir die Datenbank eben anschauen damit ich die Excell Files optimieren kann. Da es viel zu kompliziert ist jede einzelne Tabelle in einem Programm zu suchen dass man nicht kennt, habe ich mich entschlossen das ganze über die Konsole abzuwickeln. Nur finde ich nicht heraus wie ich über die Konsole auf eine SQL DB connecte.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ah ok, das mit Access hatte ich fehlinterpretiert

Irgend eine Importfunktion wird die Datenbank haben. Wandel die Exceltabelle notfalls in ein (formatiertes) Textfile um.

Wenn gar nichts geht, bastel um die Einträge in der Exceltabelle SQL Befehle um ein Insertstatement zu erzeugen und pack alles in eine Batchdatei

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich glaube ich habe meine Fragen nicht gut gestellt.

Das erste was ich machen muss ist die Excel dateien auf zu arbeiten.

Dazu muss ich mich in der Datenbank umsehen können damit ich weiss welche einträge wichtig / unwichtig sind.

Mein Problem ist, dass ich nicht weiss wie ich mich zu der DB verbinde. Also wenn ich Start->Ausführen"CMD" mache geht die Konsole auf ... aber WIE komme ich von dort in die DB? (dahin wo ich mit SQL-Befehlen voran komme)

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich bin nicht der gute Programmierer, aber ich würde da mal am besten den wegvorschlagen über vba. Du machst aus den Tabellen ne textdatei in SQLFormat. Weißt schon wie ich das meine. ;-)

Und bevor du die Daten in dasSQL packst gibt es doch PL/SQL, falsl es dir ein Begriff ist. Ich weiß jetzt nicht in wieweit es für dichein Begriff und verwendbar ist.

PL/SQL - Wikipedia

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich bin nicht der gute Programmierer, aber ich würde da mal am besten...

Nein du bist offensichtlich nicht der Beste Programmierer...

Und wie man eine Textdatei in sqlformat macht würde ich auch gerne sehen!! Weißt du, wenn man so wenig weiß von dem was man da von sich gibt, dann ist gut gemeinte hilfe extrem irreführend!!

Und bevor du die Daten in dasSQL packst gibt es doch PL/SQL, falsl es dir ein Begriff ist. Ich weiß jetzt nicht in wieweit es für dichein Begriff und verwendbar ist.

tja, offensichtlich ist es auch für dich nicht wirklich ein begriff. PL/SQL gibt es nur in Oracle-Datenbanken. Hierfür müsste aber erst geklärt werden welche Datenbank hier vorhanden ist!!!

Also zum Thread-Ersteller: Kläre erstmal welche der vielen SQL-Datenbanken unter dieser Applikation läuft und dann kannst du dir gedanken machen wie du dich connectest und welche Entwicklungssprache zu brauchst.

Bevor zu anfängst müssen noch so fragen geklärt werden wie, anhand welcher Informationen ein vorhandener Adressdatensatz wirklich schon vorhanden ist? (am nachname, nachname und vorname oder mit Adresse. Müssen verschiedene Schreibweisen berücksichtigt werden (Mueller und Müller) usw.).

Ansonsten noch mal zum verständnis. Du machst eine Aufgabe für eine Firma, damit du einen Praktikumplatz erhälst??? Sowas solltest du wärend des Praktikums machen und nicht davor. Was machst du wenn du das fertig hast die Firma freut sich und nimmt dich dann trotzdem nicht als Praktikant?? Oder habe ich da was falsch verstanden....???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nein du bist offensichtlich nicht der Beste Programmierer...

Und wie man eine Textdatei in sqlformat macht würde ich auch gerne sehen!! Weißt du, wenn man so wenig weiß von dem was man da von sich gibt, dann ist gut gemeinte hilfe extrem irreführend!!

Klug******er wie dich mag ich ja echt!

Ich meinte damit die SQL Strings erstellen lassen, von wegen Insert bla into bla usw.

Was gibt es denn daran auszusetzen?

tja, offensichtlich ist es auch für dich nicht wirklich ein begriff. PL/SQL gibt es nur in Oracle-Datenbanken. Hierfür müsste aber erst geklärt werden welche Datenbank hier vorhanden ist!!!

Das es nur in Oracle Datenbanken gibt ist mir bewusst. Ich hatte ganz einfach angenommen, dass er evtl., damit arbeitet.

Deine Klug******erei war hier denke ich ziemlich unangebracht...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn das bei dir als Klug... ankam, so tut mir das Leid. Aber wenn du dir bitte deinen Beitrag nochmal durchliest musst du feststellen, das deine Aussage für einen Anfänger einfach alles andere als hilfreich ist.

Also ein paar Fragen dazu...:

Die Aussage das er evt. mit Oracle arbeitet wie kommt man dazu (Hat diese sql-Bussiness... was damit zu tun) ?

Warum empfiehlst du VBA?

Und wenn du meinst er soll Inserts-Strings machen warum schreibst du einem Anfänger dann sql-Format und was soll er dann genau damit machen und wie erstellt er die?

Und wenn es sich um Oracle handelt warum soll er dann PL/SQl nehmen?

Wenn du diese Fragen/Ausführungen für einen Anfänger untermauern kannst, dann mag dein Weg ja richtig sein, aber solange das nur so wie bisher dasteht, hilft es ihm nichts und das wollte ich aussagen.

Also nochmal enschuldigung das es etwas übel von mir ausgedrückt war, aber ich bin nun gespannt über deine weiteren Ausführungen...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Mein Problem ist, dass ich nicht weiss wie ich mich zu der DB verbinde. Also wenn ich Start->Ausführen"CMD" mache geht die Konsole auf ... aber WIE komme ich von dort in die DB? (dahin wo ich mit SQL-Befehlen voran komme)

Auf die Gefahr hin, dich völlig falsch verstanden zu haben und als schlechter Programmierer deklariert zu werden^^

(sorry...war nur´n Spaß ! :D )

Am wichtigstens ist erstmal, auf welches Datenbanksystem (ORACLE, DB2, Access etc.) du überhaupt zugreifen willst. Dann könnten wir dir viel leichter weiterhelfen.

Du könntest allerdings mal folgendes versuchen:

Gehe in Excel auf´s Menü "DATEN".

Dort klicke bitte auf "Externe Daten" -> "Neue Abfrage erstellen"

Daraufhin geht ein neues Fenster auf und Excel wird dich nach einer Datenquelle fragen (da geht ne Liste auf).

Diese Datenquelle ist dann deine Datenbank (nicht deine Tabellen!) - wie die heißt solltest du eigentlich wissen!

Ist für deine(eure) Datenbank auf dem Rechner bereits ein ODBC-Treiber installiert und eingerichtet, dann sollte sich diese in obiger Auswahlliste der Datenquellen wiederfinden.

Doppelklick auf die richtige Datenquelle, dann sollte nen Fenster mit Benutzername und Paswort aufgehen. Nach Anmeldung sollte er dir dann bereits eine Liste aller Tabellen innerhalb dieser Datenbank anzeigen. Hier kannst du dann deine Abfrage sogar "zusammenklicken" (oder auch per "MS Query" weiterarbeiten).

Falls du deine Datenbank allerdings nicht findest, dann ist wahrscheinlich weder eine Client-Software, noch ein passender ODBC-Treiber installiert.

Dann müßten wir wirklich wissen, welches Datenbanksystem auf dem Server/Host Anwendung findet.

Falls deine Tabellen (bzw. deine Datenbank) tatsächlich in ACCESS vorliegen sollten (das konnte ich aus deinem Post leider nicht rauslesen) dann kannst du obiges geschreibsel ab "Neue Abfrage erstellen" geistig verwerfen.

Hier genügt es dann, wenn du in der Liste "Microsoft Access-Datenbank" als Datenquelle auswählst. Da geht dann ein Filedialog auf, wo du deine *.mdb-Datei auswählen mußt (diese mußt du ja haben, falls es Access-Tabellen sind und du kein Access auf´m Rechner hast).

Also, Versuch macht Kluch ! :D

Viel Erfolg...

und falls es nicht funzt:

Datenbanksystem rauskriegen und nochmals hier fragen.

Greetz,

S.E.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ohje ...

Da hab ich mich wohl ziemlich undeutlich ausgedrückt. Also nochmal und diesmal hoffendlich Vollständig:

Ich mache das um ein Praktika Platz zu bekommen ... und ja die möglichkeit das sie danke sagen und mich doch nicht nehmen besteht. Aber was soll ich machen? Wenn ich keins finde Kickt mich die Schule.

An unterschtützung habe ich:

1x PC von der Firma mit MS-SQL DB und der dazugehörigen Applikation die wohl uninteressant ist. Darauf installiert ist kein Access oder Excel und ich darf auch nichts drauf Installieren. Dafür habe ich den "Enterprise Manager" und den "Query Anlyzer" vom MS SQL Server.

2x Unterschiedlich Formatierte .xls Dateien die ich noch Optimieren muss. Am besten durch ein Script ... kann OpenOffice VBA? Von hand hab ich schon gamacht was ich kann. (sind lange spalten)

Open Office benutze ich auf meinem Linux Notebook und ich habe ein ODBC Username und PW erhalten. hab keine Ahnung was ODBC ist :-)

Das ist alles.

Aufgaben sind Folgende:

- .xls Dateien Optimieren, dass ich sie importieren kann (VBA?)

- Importieren nach i_AdressImport

- Durch ein Scrip prüfen ob ein Eintrag bereits in KUNDEN, LIEFERANTEN oder VTAdressen vorhanden ist, wenn nicht Import nach Z_Adressen.

Rot ist das Aktuelle Problem.

Die schwierigkeit ist, dass ich manche Spalten aufteilen und andere zusammen nehmen muss ... für 1000einträge mach ich das nicht von hand sondern schreib mir ein script.

Soviel mal dazu ... ich bin jetzt erstmal am googeln darüber was die VBA fähigkeit von OO angeht.

Danke für die ganzen Antworten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

Ich bin nun wieder ein Kleines Stück weiter,

Aufgaben sind Folgende:

- .xls Dateien Optimieren, dass ich sie importieren kann (VBA?)

- Importieren nach i_AdressImport

- Durch ein Scrip prüfen ob ein Eintrag bereits in KUNDEN, LIEFERANTEN oder VTAdressen vorhanden ist, wenn nicht Import nach Z_Adressen.

Nach dem ich die letzte nacht durchgemacht habe kann ich nun VBA Scripten :-) Oje sorry OpenOffice.org Basic meine ich natürlich.

Wenn ich wieder anständig aus meinem kopf sehe, werde ich weiter machen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Excel bietet eigentlich gute Möglichkeiten die Daten zu konvertieren (Text in Spalten oder ähnnliches). Aber keine Ahnung wie das mit Open Office aussieht (eventuell würde es sich anbieten Windows auf deinem Rechner zu installieren wenn du später in diesem Umfeld arbeiten möchtest) oder was überhaupt an den Dateien angepasst werden muss.

Bevor du die Dateien optimierst solltest du klären wie du die aufbereiteten Daten in das Datenbanksystem bekommst und dementsprechend deine nächsten Schritte planen.

Selbst wenn dir die Firma das Praktikum nicht gibt, etwas gelernt haben wirst du trotzdem. Die Idee jemanden eine kleine Aufgabe zu geben und zu schauen welchen Lösungsweg er einschlägt finde ich wirklich gut. Für die Firma ist das kostengünstig, der Bewerber bekommt zumindest einen kleinen Einblick in sein mögliches Arbeitsumfeld.

Was mich aber viel mehr interessiert ist, ob die Firma dir "echte" personenbezogene Daten zur Verarbeitung gegeben hat. Dann kannst du dein Praktikum auch bei einer Konkurrenzfirma oder beim Amt für Datenschutz machen :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...