
Alex_winf01
Mitglieder-
Gesamte Inhalte
639 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
3
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von Alex_winf01
-
Hallo liebe Forengemeinde, ich ärgere mich gerade mit meinem Kollegen rum. Folgendes: In Access kann man einer Abfrage (select-Anweisung) einen Wert übergeben. Wenn man die entsprechende Abfrage aufruft, kommt ein Eingabe-Fenster, in dem man den Parameter eintragen kann. Nun möchte mein Kollege, dass ich die SQL-Abfragen "irgendwie" in Oracle speicher und dann über die Benutzeroberfläche den Parameter übergebe. Die Benutzeroberfläche wird mit C++ umgesetzt. Mein Kollege möchte nicht, dass ich die select-Befehle in dem C++-Quellcode umsetze, sondern direkt in Oracle. Geht das überhaupt und wenn ja, wie? Ich vermute mal, dass ich eine Prozedur oder eine Funktion brauche. Die "einfachen" Abfragen habe ich über VIEWS umsetzen können, deren Befehle in SQL-Skripte abgelegt sind. Diese werden zur Laufzeit aufgerufen.
-
@ Stefan87 Das Statement läuft auf einer Oracle 10g.
-
@ dr.dimitri Das ist in einem SQL-Statement.
-
Hallo, ich habe folgende verzweigte CASE WHEN-Anweisung: CASE WHEN SpalteA > 2009 THEN BEGIN WHEN SpalteD='K' or SpalteD='G' And SpalteB='false' and SpalteC='false'THEN BEGIN 1 ELSE 0 END END ELSE BEGIN WHEN SpalteD='K' or SpalteD='G' And SpalteB='false' and SpalteC='false' THEN BEGIN THEN BEGIN 1 ELSE 0 END END END END CASE as xyz Ich bekomme die Fehlermeldung, dass ein Schlüsselwort fehlt. Was mache ich falsch?
-
Hallo liebe Forengemeinde, ich bekomme beim Importieren folgenden Fehler: Ich kann auch nicht über den Enterprise-Manager zugreifen, sehr wohl aber über den SQLDeveloper. Ich hatte zunächst die TNSNAMES.ORA in Verdacht, die ist aber in Ordnung. Die Instanz ist auch oben, wenn ich direkt auf unserem Server den Enterprise-Manager zugreife, funktioniert es (auch der Import). Gehe ich von meinem Client-Rechner über den Enterprise-Manager, kann er die Seite nicht finden und der Import läuft nicht. Woran kann das liegen? In der Alert-Datei ist keine Fehlermeldung eingetragen.
-
Hallo liebe Forengemeinde, ich bekomme beim Importieren folgenden Fehler: Ich kann auch nicht über den Enterprise-Manager zugreifen, sehr wohl aber über den JDeveloper. Ich hatte zunächst die TNSNAMES.ORA in Verdacht, die ist aber in Ordnung. Die Instanz ist auch oben, wenn ich direkt auf unserem Server den Enterprise-Manager zugreife, funktioniert es (auch der Import). Gehe ich von meinem Client-Rechner über den Enterprise-Manager, kann er die Seite nicht finden und der Import läuft nicht. Woran kann das liegen? Instanz ist oben, TNSNAMES.ORA ist korrekt.
-
Hallo liebe Forengemeinde, testweise habe ich einen select-Befehl im JDeveloper abgesetzt. Nun möchte ich diese Daten in Excel kopieren. Wie kann ich das machen? Wenn ich das Ergebnis unten im Fenster markiere (über STRG A, STRG C) und in Excel reinkopiere, dann sind da unschöne Leerspalten und Leerzeilen drinn. Weiss jemand eine "ellegantere" Lösung?
-
@ MartinSt wir setzen eine Oracle-Datenbank ein, Version 10g
-
@ MartinSt Du meinst die Methoden CONCATENATE (ausdruck || ausdruck), convert bzw. cast?
-
Hallo, innerhalb eines Select-Befehles habe ich folgende Konstruktion: SpalteA + SpalteB + SpalteC & wenn(SpalteD = 1;"Text";"") D. h. vorne kommt die Aufsummierung der Spalten A, B und C und dann wenn SpalteD > 0 ist ein beliebiger Text, ansonsten soll nur die Aufsummierung der Spalten A, B und C erscheinen. Folgende Konstruktion habe ich probiert: SpalteA + SpalteB + SpalteC + Case WHEN SpalteD = 1 Then 'Text' Else '' End AS xyz, SpalteA, SpalteB und SpalteC kommen aus der selben Abfrage wie xyz. Leider bekomme ich eine Fehlermeldung, dass SpalteA, SpalteB und SpalteC ungültig sind. Was mache ich da falsch?
-
PHP oder C++ für Oberflächenprogrammierung
Alex_winf01 antwortete auf Alex_winf01's Thema in Datenbanken
@ flashpixx vielen Dank für Deine Antwort. Mein Kollege möchte mit aller Gewalt C++, weil er der Meinung ist, dass währe Maschinennäher als PHP. Und er vertraut nur auf die alten Sprachen. Er sieht die "Gefahr" im Webbrowser, dass da was passieren kann. Ich beherrsche mehr PHP wie C++, kann zwar Java programmieren, aber fühle mich in der Welt von C/C++ nicht so wohl. -
Hallo, wir habe im Hintergrund eine Oracle-Datenbank laufen und bauen jetzt eine Oberfläche hierfür auf (also zum Daten erfassen, Daten anzeigen usw.). Wir haben festgestellt, dass Aplikation Express nichts für uns ist (unterstützt einen zusammengesetzten Primärschlüssel mit mehr als 3 Attributen nicht). Nun sind wir am überlegen, ob wir die Oberfläche mit PHP oder mit C++ umsetzen. Vereinzelte Abfragen liefern mehr als 2 Millionen Datensätzen. Ist hierfür eigentlich PHP noch geeignet oder sollten wir hierfür C++ nehmen? Ich bin um jede Erfahrung dankbar.
-
@ robotto7831a habe jetzt die Problematik noch mal mit Views aufgebaut und es funktioniert!
-
@ dr.dimitri Folgendes läuft bei mir auf einen Fehler: WITH Jahresdaten_anzeigen AS ( /** Select-Befehl**/ ), Jahresdaten_Maximum_Jahr AS ( /** Select-Befehl**/ ), Jahresdaten_Maximum_Jahr_T2 AS ( /** Select-Befehl**/ ), Jahresdaten_Außenstelle AS ( /** Select-Befehl**/ ) // In dieser Zeile tritt der Fehler auf Select * from Jahresdaten_Außenstelle; Ich bekomme folgende Fehlermeldung: Kannst Du mir da helfen?
-
Hallo liebe Forengemeinde, ich habe folgendes "kleines" Problem mit dem Inline View: Hier bekomme ich die Fehlermeldung, dass in der Zeile ein Schlüsselwort fehlt. So ein Konstrukt habe ich als Inline View über google gefunden. Was mach ich da verkehrt?
-
@ all danke schon mal für die Geduld und die Antworten. Jetzt funktioniert es, wenn ich das As XXX hinter das End stelle.
-
@ robotto7831a danke für die Info. Ich habe da noch eine andere Frage zu CASE WHEN: CASE WHEN JAHRESDATEN.SPALTEXYZ='B' Or JAHRESDATEN.SPALTEXYZ='G' THEN JAHRESDATEN.SPALTEA + JAHRESDATEN.SPALTEB + JAHRESDATEN.SPALTEC AS XXX ELSE 0 AS XXX END, Hier bekomme ich in der Zeile JAHRESDATEN.SPALTEA + JAHRESDATEN.SPALTEB + JAHRESDATEN.SPALTEC AS XXX die Fehlermeldung, dass ein Schlüsselwort fehlt. Was mache ich da falsch? in XXX soll doch nur SpalteA, SpalteB und SpalteC aufadiert werden. Ansonsten soll in XXX eine 0 stehen.
-
@ robotto7831a hab schon gemerkt, dass es in Oracle nicht funktioniert. ABER: Ich kann in Access in jede Abfrage eine andere Abfrage einbauen, in MySQL kenne ich das Attribut VIEW_METADATA. Nur Oracle soll es nicht kapieren? Ich selber habe die Problematik gesehen. Nur mein Kollege will es aus den oben genannten Gründen nicht kapieren. Verständlich auch. Beantworte mir folgende Frage: Warum kann ich so was in Access und in MySQL realisieren, aber nicht in Oracle?
-
@ robotto7831a Kann ich die einzelnen Abfragen nicht in einer View "speichern" und dann abfragen? Die Abfrage 1 brauche ich nicht nur für Abfrage 2, sondern auch für Abfrage 8.
-
@ robotto7831a Also so was wie die Funktion decode?
-
@ robotto7831a Vielen Dank schon mal für Deine Antwort. Und wie würdest Du den Part if(tabellea.spalteb > 0;1;0) as XYZ innerhalb des Select-Befehls abfangen? Geht das so einfach?
-
Ich möchte das Ergebnis meiner ersten Zwischenabfrage in einen View speichern, dann die zweite Abfrage drüber. Ich habe nur folgendes "Problem": In der ersten Zwischenabfrage wird folgendes gemacht (vereinfacht dargestellt): select tabellea.spaltea, tabellea.spalteb, if(tabellea.spalteb > 0;1;0) as XYZ, tabelleb.spalteaa, tabelleb.spaltebb, if(tabelleb.spaltecc > 0;1;0) as ZZZ, tabellea.spalted, tabelleb.spaltedd from tabellea, tabelleb where tabellea.spalted=tabelleb.spaltedd group by tabellea.spalted Abfrage 3 baut auf Abfrage 2 auf, Abfrage 2 baut auf Abfrage 1 auf. Alles in EINE Abfrage packen ist NICHT gewünscht. Das Ergebnis der 1. Abfrage soll in eine View gepackt, das Ergebnis der 2. Abfrage soll in eine andere View gepackt. Wie würdest Du das machen? NICHT in eine Abfrage packen und es soll keine zusätzliche Tabelle angelegt werden hierfür!!!
-
@ robotto7831a Ich habe da noch eine Frage: create or replace package body jahresdaten_anzeigen as procedure jahresdaten_anzeigen as -- 'gedachtes' declare Cursor jahresdaten_anzeigen_cursor is /** Hier steht der SQL-Befehl **/ begin For jahresdaten_record IN jahresdaten_anzeigen_cursor LOOP /** Einige if-Anweisungen **/ End loop; end; end jahresdaten_anzeigen; Wie kann ich jetzt die Daten aus dem SQL-Befehl in einen View schreiben? Ich finde da bei google nichts vernünftiges.
-
@ robotto7831a danke für Deine Antwort. Hatte aus Versehen zweimal die selbe Spalte einer Tabelle im SQL-Befehl drin. Jetzt habe ich eine Verständnisfrage: In unserer Access-Datenbank habe ich eine Abfrage a und b, die sich bestimmte Informationen aus den Tabellen holen. Dann habe ich eine Abfrage c, die auf beide Abfragen aufbaut. Also so was wie Select a.Strasse, a.Ort, b.Info, b.Blabla where a.Id=b.ID Wie kann ich das am einfachsten in PL/SQL umsetzen? Ich hatte an verschiedene Prozeduren bzw. Funktionen gedacht.
-
Hallo liebe Forengemeinde, Folgender Teil-Code bereitet mir gerade Kopfzerbrechen: declare ... cursor jahresdaten_anzeigen_cursor IS ... BEGIN For jahresdaten_record IN jahresdaten_anzeigen_cursor LOOP ... END LOOP; END; Bei den Drei Punkten habe ich dann Code weggelassen, der funktioniert. Bei der Zeile For jahresdaten_record IN jahresdaten_anzeigen_cursor LOOP bekomme ich folgende Fehlermeldung: was mache ich falsch?