This example shows how to call a stored procedure that returns
data using the fetch function. Use the JDBC interface to
connect to a Microsoft®
SQL Server® database, call a stored procedure, and return data. For this example,
the Microsoft
SQL Server database contains the stored procedure
getSupplierInfo. This stored procedure returns the supplier
information for suppliers of a given city. This code defines the procedure.
CREATE PROCEDURE dbo.getSupplierInfo
(@cityName varchar(20))
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON
SELECT * FROM dbo.suppliers WHERE City = @cityName
END
For Microsoft
SQL Server, the statement 'SET NOCOUNT ON' suppresses the
results of INSERT, UPDATE, or any
non-SELECT statements that might be before the final
SELECT query, so you can import the results of the
SELECT query.
Use the fetch function when the stored procedure returns one or
more result sets. For procedures that return output parameters, use
runstoredprocedure.
Using the JDBC interface, connect to the Microsoft
SQL Server database called 'test_db' with a user name and
password using port number 1234. This example assumes that
your database server is on the machine servername.
conn = database('test_db','username','pwd', ... 'Vendor','Microsoft SQL Server', ... 'Server','servername','PortNumber',1234);
Call the stored procedure, getSupplierInfo, and display the
supplier information for New York city using the
fetch function and the database connection.
results contains the supplier information.
sqlquery = '{call getSupplierInfo(''New York'')}';
results = fetch(conn,sqlquery)ans =
3×5 table
SupplierNumber SupplierName City Country FaxNumber
______________ __________________ __________ _______________ ______________
1001 'Wonder Products' 'New York' 'United States' '212 435 1617'
1006 'ACME Toy Company' 'New York' 'United States' '212 435 1618'
1012 'Aunt Jemimas' 'New York' 'USA' '14678923104'
close(conn)
database | fetch | runstoredprocedure