The syntax for stored procedure SQL used with the database components takes one of the following general forms:

  • {call <procedure-name>[<arg1>,<arg2>, ...]}
  • {?= call <procedure-name>[<arg1>,<arg2>, ...]}

A procedure may take zero or more parameters and, if a function, also return a value. The parameters for a stored procedure may be either IN parameters or OUT parameters. Within the XML configuration file, stored procedure SQL should be enclosed within <procedure>...</procedure> tags to indicate that the SQL should be executed as a stored procedure rather than as standard SQL. For stored procedures used without OUT parameters and which return nothing or implicitly return a result set (with the {call <procedure-name>[<arg1>,<arg2>, ...]} syntax), exchanging the <sql> element for the <procedure> element is the only difference between executing standard SQL and calling a stored procedure.

LONGVARCHAR and CLOB data types are not supported as return types of stored procedures when using Microsoft SQL Server with a Microsoft Driver. This is due to a limitation in the default JDBC Driver (jTDS) used by Rhapsody to communicate with Microsoft SQL Server. The output parameters for a Microsoft SQL Server stored procedure are truncated to 4000 characters. The Microsoft JDBC Driver for Microsoft SQL Server can be used  to overcome this limitation.