Native SQL

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Getting started ... Alles für einen gelungenen Start.
13 Beiträge • Seite 1 von 1
13 Beiträge Seite 1 von 1

Native SQL

Beitrag von Bugfix13 (ForumUser / 97 / 17 / 5 ) »
Hallo Zusammen

Ich möchte mit native SQL anhand des Namens den Ansprechpartner aus der Tabelle KNVK lesen.
Ich habe gelesen, dass mit native SQL die ganze Problematik mit klein & Grossschribung wegfällt.

Was mache ich flasch? Bekommen immer den Fehler: sql fehler 923 bei der ausführung von Native SQL..

Code: Alles auswählen.

  EXEC SQL.

    SELECT KUNNR PARNR NAME1 NAMEV FROM KNVK
       INTO :LS_KNVK
       WHERE UPPER(NAME1) = :NAME.

        APPEND ls_knvk TO lt_knvk.
  ENDEXEC. 

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Native SQL

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
APPEND ist kein natives SQL-Kommando...
Siehe hier:
http://www.tricktresor.de/blog/exec-sql/

Re: Native SQL

Beitrag von abap-expert (ForumUser / 7 / 0 / 1 ) »
Von der Verwendung des EXEC Statements kann ich nur abraten. Zum einen wird dabei die Datenbank Management Schicht als optimierte Schnittstelle zur Datenbank umgangen und ist damit nur wenigen Fällen zu empfehlen - und auch wirklich notwendig. Auf der anderen Seite muss ein EXEC Statement bei einem DB Wechsel geprüft werden.
Da in den kommenden Jahren der Umstieg auf HANA für viele Kunden ein Thema sein wird, sollte dies heute schon beachtet werden.

Re: Native SQL

Beitrag von ewx (Top Expert / 4849 / 313 / 642 ) »
abap-expert hat geschrieben: Da in den kommenden Jahren der Umstieg auf HANA für viele Kunden ein Thema sein wird, sollte dies heute schon beachtet werden.
Inwiefern?

Re: Native SQL

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
Bugfix13 hat geschrieben: Was mache ich flasch? Bekommen immer den Fehler: sql fehler 923 bei der ausführung von Native SQL..
Ohne Angabe der DB wird man dir da kaum helfen können - ich tippe mal auf die Fehlermeldung von Oracle.

Darüber hinaus hat Enno natürlich recht: Der APPEND gehört da nicht hin.
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Native SQL

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
abap-expert hat geschrieben:Von der Verwendung des EXEC Statements kann ich nur abraten. Zum einen wird dabei die Datenbank Management Schicht als optimierte Schnittstelle zur Datenbank umgangen und ist damit nur wenigen Fällen zu empfehlen - und auch wirklich notwendig. Auf der anderen Seite muss ein EXEC Statement bei einem DB Wechsel geprüft werden.
Da in den kommenden Jahren der Umstieg auf HANA für viele Kunden ein Thema sein wird, sollte dies heute schon beachtet werden.
So schnell wechselt man die DB nicht und nicht nur bei Native SQL, sondern schon bei einfachen Hints wird das schwierig.

Das Thema HANA wird (erwartungsgemäß) verhalten aufgenommen, weil niemand sich so einfach vom strategischen Partner Oracle trennen mag. Das ist so das Feedback von meinen Kunden. Vielleicht fürs BW, aber nicht als Standard-DB des produktiven Systems.

Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
Bugfix13

Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Native SQL

Beitrag von abap-expert (ForumUser / 7 / 0 / 1 ) »
Hallo Ralf,

Deine Einschätzung bzgl. HANA ist sicher korrekt - BW ist sicher der Vorreite für HANA.

Ich wollte den Hinweis allerdings loswerden, da ich letzte Woche auf einem Event war bei dem ein Beratungshaus eine DB Migration vorgestellt wurde. Oracle auf Sybase. Das war natürlich kein einfaches Unterfangen! Allerdings hat der betreffende Kunde laut eigener Aussage dabei einen großen Betrag an Lizenzkosten einsparen können. ROI nach 2,5 Jahren!

Beste Grüße Christoph

Folgende Benutzer bedankten sich beim Autor abap-expert für den Beitrag:
Bugfix13


Re: Native SQL

Beitrag von foessleitnerj (ForumUser / 51 / 4 / 18 ) »
Hallo!

Direkte Zugriffe oder DB Hints sollten wirklich nur in begründeten Fällen verwendet werden. Nicht nur wegen einer späteren Hana, generell sollten solche Zugriffe mit Bedacht eingesetzt werden. Im Hinblick auf einen Umstieg auf Hana müssen diese Coding Teile später in jedem Fall angegriffen werden.

Wenn jedoch ein Nativ-Zugriff notwendig ist, empfehle ich zumindest die Verwendung der ADBC (ABAP Database Connectivity)

http://help.sap.com/abapdocu_702/de/abenadbc.htm


lg Fößleitner Johann

Folgende Benutzer bedankten sich beim Autor foessleitnerj für den Beitrag:
Bugfix13

Die Performance und Ergebnisse von SELECTs und JOINs im Produktivsystem überprüfen?
=> SQL Cockpit
http://www.cadaxo.com

Re: Native SQL

Beitrag von ralf.wenzel (Top Expert / 3935 / 200 / 281 ) »
foessleitnerj hat geschrieben: Direkte Zugriffe oder DB Hints sollten wirklich nur in begründeten Fällen verwendet werden.
Wenn ich die Performance eines Programmes deutlichst durch einen Hint beschleunigen kann, dann mache ich das. Anwender haben in der Regel kein Verständnis für Formalitäten, sondern wollen ihre Arbeit machen können.

Und direkte Zugriffe vermeiden?

Wenn ich (und dafür verwendete ich Native SQL) auf eine externe Datenbank zugreifen muss, dann tue ich das. Auch hier gilt: Der Anwender muss arbeiten können.

Folgende Benutzer bedankten sich beim Autor ralf.wenzel für den Beitrag:
Bugfix13

Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Native SQL

Beitrag von Bugfix13 (ForumUser / 97 / 17 / 5 ) »
Hallo Zusammen

Ja ich würde am liebsten auch auf Native SQL verzichten..

Ich möchte aber in der Tabelle KNVK die Einträge ermitteln welche beim
FuBa-Parameter dem eingegebenen Namen entsprechen. Mein Problem ist nur, dass der eingegebene Name nur in Grossbuchstaben daherkommt.
Fülle ich diesen Namen in das WHERE der Selectabfrage so werden die Ergebnisse nicht angezeigt.. Beispiel:

Datensatz auf der Tabelle: Meier
Parameter eingegeben: meier
Ich erhalte: MEIER

Wenn ich nun prüfe: WHERE name = 'MEIER' wird das Ergebnis Meier nicht angezeigt --> gross kleinschreibe Problem.
Habe auch schon ranges versucht dann mit CP anstelle EQ aber hat auch nicht funktioniert.

Was gibt es da noch?

Re: Native SQL

Beitrag von JHM (Top Expert / 1197 / 1 / 197 ) »
Bugfix13 hat geschrieben:Wenn ich nun prüfe: WHERE name = 'MEIER' wird das Ergebnis Meier nicht angezeigt --> gross kleinschreibe Problem.
Habe auch schon ranges versucht dann mit CP anstelle EQ aber hat auch nicht funktioniert.

In der KNVK wird doch mittel Feld PRSNR die Tabelle ADRP verknüpft. Die ADRP beinhaltet Felder für die Suchhilfe in UpperCase: MC_NAMEFIR, MC_NAMELAS,
MC_NAME2. Mit einem geschickten Join sollte sich dein Problem eigentlich lösen lassen.

Folgende Benutzer bedankten sich beim Autor JHM für den Beitrag:
Bugfix13

Gruß Hendrik

Re: Native SQL

Beitrag von Tron (Top Expert / 1327 / 35 / 332 ) »
Moin.
Wenn jedoch ein Nativ-Zugriff notwendig ist, empfehle ich zumindest die Verwendung der ADBC (ABAP Database Connectivity)
Würde ich auch empfehlen !
Bitte mal den Report SDB_ADBC anschauen. :wink:
lg Jens

Folgende Benutzer bedankten sich beim Autor Tron für den Beitrag:
Bugfix13

<:: XING-Gruppe Tricktresor::>
Die deutsche Rechtschreibung ist Freeware, du darfst sie kostenlos nutzen –
Aber sie ist nicht Open Source, d. h. du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

Re: Native SQL

Beitrag von Bugfix13 (ForumUser / 97 / 17 / 5 ) »
Vielen Dank für die interessanten Antworten.

Habe es nun mittels INNER JOIN mit ADRP gelöst! Danke für den Hinweis.

Gruss Bugfix13

Seite 1 von 1

Vergleichbare Themen

4
Antw.
4111
Views
Native SQL
von bliP! » 06.03.2006 15:49 • Verfasst in ABAP® für Anfänger
4
Antw.
2648
Views
Native SQL -> DDIC
von Jurko » 29.07.2005 16:53 • Verfasst in ABAP® Core
4
Antw.
3557
Views
Native SQL - Insert
von MarkusG » 04.04.2008 07:13 • Verfasst in ABAP® Core
10
Antw.
4198
Views
Abap und Native SQL
von cgreiner » 22.10.2018 18:28 • Verfasst in ABAP® für Anfänger
0
Antw.
1057
Views
und mal wieder Native SQL
von Steffi221185 » 14.08.2006 09:07 • Verfasst in ABAP Objects®

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

Regex in where
vor 7 Stunden von edwin 7 / 163
Daten an Tabelle binden
vor 20 Stunden von Bright4.5 3 / 1487

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

Regex in where
vor 7 Stunden von edwin 7 / 163
Daten an Tabelle binden
vor 20 Stunden von Bright4.5 3 / 1487

Unbeantwortete Forenbeiträge

aRFC im OO-Kontext
vor 5 Wochen von ralf.wenzel 1 / 3261
Hilfe bei SWEC/SWE2
September 2024 von retsch 1 / 9822