CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
27.07.2008, 23:24:00
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Hallo, meine Frage ist:
Eine Funktion wurde in MySQL-Administrator erstellt (Stored Procedure).
Return-Wert: z.B. 4, 0.25, 2.5 usw.
Die Variable tMultiplikator wurde als FLOAT deklariert. Diese wird im Laufe der Funktion mit einem Wert belegt und schlussendlich an RETURN übergeben.
Soweit richtig.
Nun: Die aufrufende SQL-Abfrage stellt den Wert nur als Ganzzahlwert dar, also z.B. 4, 0, 2 usw.
Dazu passt das folgende Zitat von Kofler, PHP 5 & MySQL 5, Addison-Wesley 2006, S. 504:
>MySQL macht sich momentan nicht die Mühe, den korrekten Datentyp bei der Übergabe
>von Parametern zu überprüfen – aber vielleicht ändert sich das in künftigen Versionen
>noch.
Frage: Wie kriege ich den Wert richtig übergeben?
Hinweis: Server 5.0.51b-community via TCP/IP
Client 5.1.11
WinXP SP2
Danke vorab für die Hilfe!
|
28.07.2008, 08:05:38
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Du musst den korrekten Datentyp bei der Übergabe der Parameter wohl selbst überprüfen.
|
28.07.2008, 21:51:45
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Also, wie ich schrieb, hatte ich das ja überprüft.
Und das Ergebnis der Überprüfung war, dass die Übergabe nicht stimmt.
Die Antwort hilft mir nicht so wirklich weiter. Schade ...
|
28.07.2008, 22:34:48
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Zitat:
Zitat von Splitter
Die Antwort hilft mir nicht so wirklich weiter. Schade ...
|
Es wird Dich überraschen, aber wie wäre es mal, wenn Du uns die stored procedure zeigst?
|
29.07.2008, 01:11:57
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Ok, habe die Funktion (Stored procedure) und die Abfrage reingehängt.
Wäre schön wenn jemand drüber kucken könnte.
Danke!
PS: Habe die Funktion soweit runtergekürzt, dass der "Fehler", wenn es einer ist, noch vorführbar ist, ohne den Leser mit langen Berechnungen zu langweilen.
|
29.07.2008, 22:32:28
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Hallo, konnte sich schon jemand meines Problems annehmen?
Vielen Dank nochmal im voraus!
|
30.07.2008, 17:55:35
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
AW: Stored Procedure - Aufrufende SQL-Abfrage erhält falschen Datentyp
Hm, kann offenbar keiner was anfangen mit meiner Frage.
Schade ...
Aber dennoch danke fürs Drüberlesen ...
|
30.07.2008, 21:09:50
|
Anfänger
|
|
Registriert seit: Jul 2008
Alter: 55
Beiträge: 6
|
|
Lösung
Die Lösung ist denkbar einfach.
In der ersten Zeile wird der Datentyp definiert, der an die Abfrage übergeben wird.
CREATE DEFINER=`Name`@`localhost` FUNCTION `Kapital`(vISIN varchar(30), vDatum DATE) RETURNS int(11)
BEGIN
...
Richtig muss es also heißen:
RETURNS float(10,4)
Alles klar, aber danke nochma für die Hilfe.
mfg Splitter
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 17:20:15 Uhr.
|