GNADE User's Guide: GNADE, The GNat Ada Database Environment; Version 1.2.0; Document Revision $Revision: 1.26 $ | ||
---|---|---|
Prev | Chapter 11. Embedded SQL Syntax Specification | Next |
In order to connect to a data base, the data base identifier to be used has to be defined first. This identifier is a simple name which may be used in the AT clause of an embedded SQL statement and is declared by means of the "declare_db_clause". This clause will insert at the source where the clause is invoked a Ada statement declaring a connection object.
Syntax: <connect_clause> ::= CONNECT [ user ] [ BY <Connection> ] [ TO <db_name> ] [ AS <name> ] [ IDENTIFIED BY <password> ] [ ON [COMMUNICATION|ATHORIZATION|OTHER] ERROR [RAISE|GOTO|DO] <target> ] <declare_db_clause> ::= DECLARE <name> DATABASEAs shown in the example below, the declare_db_clause may be used in the argument list of a procedure.
Example 11-3. Using DB connections as procedure arguments
procedure Print_Employee( His_Number : Integer; EXEC SQL DECLARE DB01x DATABASE ) is --- ........... --- begin empno := INT(His_Number); EXEC SQL WHENEVER NOT FOUND DO Not_Found; EXEC SQL AT DB01x SELECT NAME, DEPTNO INTO :name, :depno FROM employees WHERE EMPNO = :empno ; ..................... end Print_Employee;
The 'ON' clause is used to define the handling of errors which may occure during connection. Please note, that the execution of a procedure is straigth forward, which means after the procedure returns the execution continues after the connect statement!
Implementation Note: The data base connection variable inserted by this statement has the name GNADE_DB_<db_name> and is of the type ESQL_Support.CONNECTION_Handle. Such a name should never be used in the application code.