PDA

View Full Version : Create or replace function schlägt fehl - Datentyp "numeric" nicht erlaubt?



Seiten : 1 [2] 3

holgerscherer
20-07-20, 12:49
Was hat das Naming mit der Syntax von SQL zu tun außer, dass das Schema/die Lib statt mit "/" mit "." getrennt wird?

Wenn wir schon so beim Diskutieren sind, könnte man ja noch darüber sinnieren, wie man einen SQL-Code auf eine andere Datenbank bekommt. Ich persönlich kriege immer mehr den Vogel, welche unterschiedlichen Schreibweisen sich mit der Zeit etablieren und welche möglich sind. Dem Durchblick förderlich ist das auf Dauer nicht...

Man sollte sich auf jeden Fall nur auf das einlassen, was der iACS beim Ausführen von SQL-Statements unterstützt. Wenn was im STRSQL nicht geht, interessiert das bei der IBM keinen mehr.

Fuerchau
20-07-20, 18:48
Wenn dem nur so wäre. Wie ich oben schon schrieb, erstelle ich einen komplexen SQL via ACS.
Wenn ich dann mit dem Ergebnis (Struktur und Performance) zufrieden bin, kopiere ich den SQL in RDi für eine View-Erstellung.
Und genau dann bekam ich einen Umwandlungsfehler bei einer Definition "Feld decimal(5,0)", da ich das Leerzeichen mal wieder vergessen habe.
Im ACS lief der SQL problemlos.

B.Hauser
20-07-20, 19:09
Und warum kopierst Du das Ganze überhaupt nach RDi?
Views kannst Du direkt mit ACS erstellen und auch die Quelle kann wahlweise als PC-Datei, IFS-Datei oder als klassisches Source-Member gesichert werden!

Fuerchau
21-07-20, 10:53
Das liegt in der verwendeten Quellverwaltung mit Versioning CMOne.
Hierfür müssen die Quellen auf der IBM i vorliegen und werden von CMOne verwaltet.
Also kann ich ACS nicht für die Erstellung sondern nur für's testen verwenden.
Das ist aber immer noch besser als STRSQL;-).

B.Hauser
21-07-20, 15:42
Hierfür müssen die Quellen auf der IBM i vorliegen
Liegt ein klassisches Source-Member nicht auf der IBM i?
Also warum kopieren, anstatt einfach zu sichern?

Fuerchau
21-07-20, 16:34
Das müsstest du mir näher erklären:
Ich starte via 5250-Sitzung=>Aktion=>SQL-Script ausführen.
Dann öffne/erstelle ich eine Textdatei "xxx.sql" auf meinem Client.
Hier probiere ich den SQL via "Select ...." aus, bis er funktioniert.
Nun lege ich ein Member in einer SRC-PF QSQLSRC via RDi an und erfasse den Rahmen mit "Create or replace MyView as ...; Label on ..." und kopiere den Select aus dem SQL-Script in den Create-Befehl.
Anschließend lasse ich CMOne die View-Erstellung übernehmen, die via RUNSQLSTM durchgeführt wird.
CMOne ergänzt i.Ü. den SQL um spezifische Lib-Angaben.

Quellen dürfen beim Kunden derzeit nicht im IFS liegen.

Ich wüsste nun nicht, wie ich dem SQL-Editor beibringen kann, eine SRC-PF zu bearbeiten.
Zusätzlich müsste ich die View immer erst erstellen (da der Create ja in der Quelle enthalten ist) und via 2. Sitzung mit einem "Select * " abzufragen.

Da finde ich nun meinen Weg schneller und effektiver.

malzusrex
22-07-20, 07:22
Hallo Baldur,

das bietet der ACS doch beim Speichern mit an.
580

Gruß
Ronald

Fuerchau
22-07-20, 08:47
Und beim Öffnen;-)?
Aber wie schon beschrieben, das löst ja das Problem der 2 Quellen nicht.
1 x native Select
1 x Create View ...

Welche ACS-Version hast du? Mein Kunde ist da etwas rückständig (Version 1.1.8.1 von 2018) da gibts die Funktion beim Speichern noch nicht.

camouflage
22-07-20, 09:02
Öffnen funktioniert genau gleich wie beim Speichern.
Aktuell ist 1.1.8.4

Fuerchau
22-07-20, 09:10
Dann werde ich mal höflich um einen Update bitten;-).