Hallo an alle...
Folgendes Szenario:
Möchte über eine TADOStoredProcedure folgende OracleStoredProcedure aufrufen:
function checkIDN (p_idn_prefix in idn.idn_prefix%type,
p_idn_nr in idn.idn_nr%type ) return boolean;
p_idn_prefix datentyp char 'L'
p_idn_nr datentyp number(10) 0165141437
------------- Aufruf unter SQL+ -------------
declare
v_procret boolean;
begin
v_procret := checkidn('L', 0165141437);
if v_procret = true then
dbms_output.put_line('nummer vorhanden');
else
dbms_output.put_line('nummer nich vorhanden');
end if;
end;
--------------------- funktioniert einwandfrei ----------------------
Wenn ich das ganze mit TADOStoredProcedure aufrufe erscheint folgende Meldung:
wrong number or types of arguments in call 'checkidn'
Übergebene Parameter:
OleSrt 'L' input
Integer 0165141437 input
boolean true/false pdReturnValue
Laut der Borland Hilfe muß der Rückgabewert in die Parameterliste eingetragen werden. Wenn ich das nicht mache lässt sich die Procedure nicht aufrufen (Fehlermeldung: Procedure nicht vorhanden! Liegt wohl am Rückgabewert)
Starten tu ich das ganze mit Procedure->open() oder Procedure->ExecProc()
Ich hoffe jemand hat eine Lösung, bin auch über andere Lösungsvorschläge dankbar...
LG
Slurm...
Referenzielle Integrität geht erst richtig ab der MySQL Version 5 die mitlehrweile freigegeben wurde.
Für ERM Diagramme nutze ich persönlich http://fabforce.net/dbdesigner4/
hi zusammen,
ich hab mir ein c++ programm geschrieben das mir diverse Infos über Datenbank-Spalten liefert.
Mittels SQLDescribeCol bekomm ich auch schon jede Menge Infos heraus, jedoch würde ich auch geren wissen wenn es sich bei einem feld um ein Primary-Key Feld handelt.
weiß vielleicht jemand von eich eine passende Funktion bzw. kennt ne möglich keit dies rauszufinden
zur info:
ich mache einfach einen select * auf dei Tabelle, ermittel mir mittels SQLNumResultCols die anzahl der Spalten und rufe dann für jede die funktion SQLDescribeCol auf.
Unix-Tom schrieb:
Sollte der Query falsch sein wird der Datensatz auch nicht eingefügt. Auch keine einzelnen Felder.
Hier wurde die Frage beantwortet.
Es wird nichts eingefügt wenn der query falsch bzw. fehlerhaft ist.
Ps.: Nicht ich will eine Frage beantwortet haben sondern Du.
Das hat mir jetzt keine Ruhe gelassen, daher hab ich mal die zwei Tabellen in meine Datenbank mit eingefügt:
Tabelle anl_stamm
Feld matchcode1
Feld inv_nr
Tabelle beweg
Feld inv_nr
Folgendes Statement:
Update [beweg] set [inv_nr] = (Select [anl_stamm].[inv_nr] from [anl_stamm] Where [anl_stamm].[matchcode1] = [beweg].[inv_nr]) from [beweg],[anl_stamm] Where [beweg].[inv_nr] = [anl_stamm].[matchcode1]
arbeitet ohne Probleme (passiert nur nichts, weil die Tabellen leer sind). Es gibt keinen Fehler irgendeiner Art.
Datenbank: MS SQL-Server 2000.
Es ist jetzt mal die Frage was du unter einem Zugriffslayer verstehst.
Wo liegt genau das Problem. Eine Schritt für Schritt-Anleitung kannst du hier nicht erwarten.
Abgesehen davon sollst du ja auch was lernen da es ja deine Aufgabe ist. Also auch mal im Web www.mysql.de informieren wie man die API verwendet.
Bilder als BLOB in die Datenbank zu schreiben ist nicht üblich.
Warum sollte sich die URL ändern? Zumindest reicht es wenn sich der Bildname nicht ändert und die url im code steht.
Wie man Bilder in BlOB speicher steht auf der Webseite von MySQL.
Hier werden übrigens keine Zeichen als solches gepspeichert sondern alles bynär.