1-- This file is covered by the Internet Software Consortium (ISC) License 2-- Reference: ../../License.txt 3 4with AdaBase.Statement; 5 6package AdaBase.Interfaces.Connection is 7 8 type iConnection is interface; 9 10 package AS renames AdaBase.Statement; 11 12 -- Autocommit 13 procedure setAutoCommit (conn : out iConnection; auto : Boolean) is null; 14 function autoCommit (conn : iConnection) return Boolean is abstract; 15 16 17 -- Column Header Case Mode 18 procedure setCaseMode (conn : out iConnection; mode : Case_Modes) is null; 19 function getCaseMode (conn : iConnection) return Case_Modes is abstract; 20 21 22 -- Set Compression Mode (if supported) 23 procedure setCompressed (conn : out iConnection; compressed : Boolean) 24 is null; 25 function compressed (conn : iConnection) return Boolean is abstract; 26 27 28 -- Set Buffered Queries (aka prefetch, if supported) 29 procedure setUseBuffer (conn : out iConnection; buffered : Boolean) 30 is null; 31 function useBuffer (conn : iConnection) return Boolean is abstract; 32 33 34 -- Set processing of multiple statements per query (if supported) 35 procedure setMultiQuery (conn : out iConnection; multiple : Boolean) 36 is null; 37 function multiquery (conn : iConnection) return Boolean is abstract; 38 39 40 -- Set maximum size of result that buffer must accommodate (if supported) 41 procedure setMaxBlobSize (conn : out iConnection; 42 maxsize : BLOB_Maximum) is null; 43 function maxBlobSize (conn : iConnection) return BLOB_Maximum 44 is abstract; 45 46 -- Set transaction Isolation level 47 procedure setTransactionIsolation (conn : out iConnection; 48 isolation : Trax_Isolation) is null; 49 function transactionIsolation (conn : iConnection) 50 return Trax_Isolation is abstract; 51 52 -- Set Character Set (only prior to connection) -- 53 procedure set_character_set (conn : out iConnection; 54 charset : String) is null; 55 function character_set (conn : out iConnection) 56 return String is abstract; 57 58 -- properties 59 function serverVersion (conn : iConnection) return String 60 is abstract; 61 function serverInfo (conn : iConnection) return String 62 is abstract; 63 function clientVersion (conn : iConnection) return String 64 is abstract; 65 function clientInfo (conn : iConnection) return String 66 is abstract; 67 function description (conn : iConnection) return String 68 is abstract; 69 function connected (conn : iConnection) return Boolean 70 is abstract; 71 72 -- Error information associated with last query 73 function SqlState (conn : iConnection) return SQL_State 74 is abstract; 75 function driverMessage (conn : iConnection) return String 76 is abstract; 77 function driverCode (conn : iConnection) return Driver_Codes 78 is abstract; 79 80 -- Information associated with previous successful query 81 function lastInsertID (conn : iConnection) return Trax_ID 82 is abstract; 83 84 function rows_affected_by_execution (conn : iConnection) 85 return Affected_Rows is abstract; 86 87 -- Commands 88 procedure commit (conn : out iConnection) is null; 89 procedure rollback (conn : out iConnection) is null; 90 procedure disconnect (conn : out iConnection) is null; 91 procedure execute (conn : out iConnection; sql : String) is null; 92 93 procedure connect (conn : out iConnection; 94 database : String; 95 username : String := blankstring; 96 password : String := blankstring; 97 hostname : String := blankstring; 98 socket : String := blankstring; 99 port : Posix_Port := portless) is null; 100 101end AdaBase.Interfaces.Connection; 102