Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » MobiLink - Clientadministration » SQL Anywhere-Clients für MobiLink » Skriptgesteuerter Upload » Gespeicherte Prozeduren für skriptgesteuerte Uploads festlegen

 

Gespeicherte Prozeduren für Einfügungen festlegen

Die gespeicherten Prozeduren für Einfügungen müssen Ergebnismengen mit allen Spalten, die heraufgeladen werden sollen, so zurückgeben, wie in der Anweisung CREATE PUBLICATION definiert, wobei die Spalten in der Reihenfolge aufgeführt werden müssen, die in der Anweisung CREATE TABLE festgelegt wurde.

Spaltenreihenfolge

Mit der folgenden Abfrage können Sie die Reihenfolge der Erstellung von Spalten in einer Tabelle mit dem Namen "t1" ermitteln:

SELECT column.name
FROM SYSTAB JOIN SYSTABCOL
   WHERE table_name = 't1'
ORDER BY column_id
Beispiel

Eine ausführliche Erläuterung, wie Sie gespeicherte Prozeduren für Einfügungen definieren, finden Sie unter Beispiel für einen skriptgesteuerten Upload.

Im folgenden Beispiel wird eine Tabelle mit dem Namen "t1" und eine Publikation mit dem Namen "p1" erstellt. Die Publikation definiert WITH SCRIPTED UPLOAD und registriert die gespeicherte Prozedur t1_insert als Einfügeprozedur. In der Definition der gespeicherten Prozedur t1_insert enthält die Ergebnismenge alle Spalten, die in der Anweisung CREATE PUBLICATION aufgelistet wurden, jedoch in der Reihenfolge, in der die Spalten in der Anweisung CREATE TABLE festgelegt wurden.

CREATE TABLE t1(
   //The column ordering is taken from here
   pk integer primary key,
   c1 char( 30),
   c2,   float,
   c3 double );

CREATE PROCEDURE t1_insert ()
RESULT( pk integer, c1 char(30), c3 double )
begin
   ...
end

CREATE PUBLICATION WITH SCRIPTED UPLOAD p1(
   // Order of columns here is ignored       
   TABLE t1( c3, pk, c1 ) USING ( 
     PROCEDURE t1_insert FOR UPLOAD INSERT 
   )
)