VMS-Specific Python Modules
VMS specific Python modules.
Contents
- 1 vms.decc
- 1.1 dlopen_test(name:str)->int
- 1.2 fix_time(vms_time:int)->int
- 1.3 from_vms(vms_path:str, wild_flag:int)->list
- 1.4 getenv(name:str, def_value:str)->str
- 1.5 sleep(seconds:int)->int
- 1.6 sysconf(name:int)->int
- 1.7 to_vms(unix_path:str, allow_wild:int, no_directory:int)->list
- 1.8 unixtime(vms_time:int)->int
- 1.9 vmstime(unix_time:int)->int
- 2 vms.ile3
- 2.1 new()->object
- 2.2 delete(il:object)->None
- 2.3 size(il:object)->int
- 2.4 addint(il:object, item:int, item_type:int, item_value:int)->None
- 2.5 getint(il:object, index:int)->int
- 2.6 gethex(il:object, index:int)->str
- 2.7 addstr(il:object, item:int, item_value:str, item_length:int)->None
- 2.8 addstrd(il:object, item:int, item_value:str, item_length:int)->None
- 2.9 addstrn(il:object, item:int, item_value:str, item_length:int)->None
- 2.10 getstr(il:object, index:int, flag:int)->str
- 2.11 addbin(il:object, item:int, item_value:int, item_offset:int, item_len:int)->None
- 2.12 getbyte(il:object, index:int, item_offset:int)->int
- 3 vms.lib
- 3.1 create_dir(name:str, uic:int, pe:int, pv:int)->int
- 3.2 date_time()->list
- 3.3 get_ef()->list
- 3.4 free_ef(ef:int)->int
- 3.5 put_common(common:str)->int
- 3.6 get_common()->list
- 3.7 get_hostname(flags:int)->list
- 3.8 getjpi(item_code:int, pid:int, pname:str)->list
- 3.9 getsyi(item_code:int, node_name:str)->list
- 3.10 spawn(command:str, input_file:str, output_file:str, flags:int, pname:str)->list
- 3.11 do_command(command:str)->None
- 4 vms.sys
- 4.1 asctim(vms_time:int, time_only:int)->list
- 4.2 bintim(time_str:str)->list
- 4.3 asctoid(name:str)->list
- 4.4 idtoasc(id_val:int, context:int)->list
- 4.5 crembx(tmp:int, maxmsg:int, bufquo:int, promsk:int, acmode:int, mbx_name:string, flags:int)->list
- 4.6 delmbx(channel:int)->int
- 4.7 assign(devnam:str, acmode:int, mbxnam:str, flags:int)->list
- 4.8 dassgn(channel:int)->int
- 4.9 readvblk(channel:int, max_read:int, block:int, fmod:int)->list
- 4.10 writevblk(channel:int, buffer:bytes, block:int, fmod:int)->list
- 4.11 cancel(channel:int)->int
- 4.12 crelnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
- 4.13 trnlnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
- 4.14 dellnm(tabnam:str, lognam:str, acmode:int)->int
- 4.15 device_scan(search_devnam:str, item_list:object, context:int)->list
- 4.16 uicstr(uic:int, flags:int)->list
- 4.17 getdvi(dev_nam:str, item_list:object)->int
- 4.18 getjpi(pid:int, pnam:str, item_list:object)->list
- 4.19 getlki(lki:int, item_list:object)->list
- 4.20 getmsg(msgid:int, flags:int)->list
- 4.21 getqui(func:int, context:int, item_list:object)->list
- 4.22 getrmi(item_list:object)->int
- 4.23 getsyi(csid:int, node_name:str, item_list:object)->list
- 4.24 gettim()->list
- 4.25 getuai(user_name:str, item_list:object)->int
- 4.26 hiber()->int
- 4.27 schdwk(pid:int, pname:str, time:int)->list
- 4.28 add_holder(id:int, holder:int, attrib:int)->int
- 4.29 add_ident(name:str, id:int, attrib:int)->list
- 4.30 find_held(holder:int, context:int)->list
- 4.31 finish_rdb(context:int)->int
- 4.32 forcex(pid:int, pname:str, code:int)->int
- 4.33 rem_holder(id:int, holder:int)->int
- 4.34 rem_ident(id:int)->int
- 4.35 setuai(user_name:str, item_list:object)->int
- 4.36 show_intrusion(user_criteria:str, flags:int, context:int)->list
- 5 rdb
- 5.1 Attach(dbname:string)->int
- 5.2 CloseCursor(cursor:object)->int
- 5.3 Commit()->int
- 5.4 Data(cursor:object, idx:int)->str
- 5.5 DeclareCursor(name:str, statement:str)->object
- 5.6 Detach()->int
- 5.7 Error()->str
- 5.8 Exec(sh:object)->int
- 5.9 ExecI(st:str)->int
- 5.10 Fetch(cursor:object)->int
- 5.11 FetchRow(cursor:object)->list
- 5.12 Free(cursor:object)->int
- 5.13 Ncol(cursor:object)->int
- 5.14 OpenCursor(cursor:object)->int
- 5.15 Prepare(st:string)->object
- 5.16 Rollback()->int
- 5.17 SetReadonly()->int
- 5.18 Sqlcode()->int
- 6 See also
vms.decc
Wraps the C Run-Time Library for OpenVMS Systems functions.
dlopen_test(name:str)->int
Checks if a shared image can be opened and loaded into memory.
- parameters
name:str
: path to the shared image- returns
1
: if the shared image exists and can be opened by dlopen()0
: otherwise
fix_time(vms_time:int)->int
Converts the VMS time to the Unix time stamp.
- parameters
vms_time:int
: VMS system time- returns
- Time in the Unix format (number of seconds since 01/01/1970)
from_vms(vms_path:str, wild_flag:int)->list
Converts the VMS path to a list of Unix paths.
- parameters
vms_path:str
: path in the VMS format (supports wildcards)wild_flag:int
: If set to0
, the wildcards found invms_path
are not expanded- returns
- List of paths in the Unix notation
getenv(name:str, def_value:str)->str
Gets the specified environment variable value. See getenv() description in the VSI C Run-Time Library Reference Manual for OpenVMS Systems.
- parameters
name:str
: name of the environment variabledef_value:str
: default value- returns
- Environment variable value
sleep(seconds:int)->int
Suspends execution of the current process or thread for the specified number of seconds.
- parameters
seconds:int
: seconds to sleep- returns
- The number of seconds left before the sleep timer expires if sleep is interrupted.
0
if the process slept for the specified number of seconds
sysconf(name:int)->int
Provides a method for determining the current value of a configurable system limit or whether optional features are supported.
- parameters
name:int
: system variable to be queried- returns
- Requested value
to_vms(unix_path:str, allow_wild:int, no_directory:int)->list
Converts UNIX style file specifications to OpenVMS file specifications.
- parameters
unix_path:str
: file name following the Unix file naming conventionsallow_wild:int
: If set to0
, the wildcards found inunix_path
are not expandedno_directory:int
An integer that has one of the following values:- 0 - Directory allowed
- 1 - Prevent expansion of the string as a directory name
- 2 - Force expansion of the string as a directory name
- returns
List of OpenVMS style pathnames
unixtime(vms_time:int)->int
Converts the OpenVMS system time to the Unix local time.
- parameters
vms_time:int
OpenVMS system time- returns
- Unix time
vmstime(unix_time:int)->int
Converts Unix time to the OpenVMS system time.
- parameters
unix_time:int
: Unix time- returns
OpenVMS system time
vms.ile3
Provides functions to work with item lists.
new()->object
Creates an empty item list.
- parameters
None
- returns
- New empty item list
delete(il:object)->None
Deletes the item list.
- parameters
il:object
: item list to be removed- returns
None
size(il:object)->int
Gets the size of the item list.
- parameters
il:object
: item list- returns
- The size of the specified item list
addint(il:object, item:int, item_type:int, item_value:int)->None
Adds a new integer to the item list.
- parameters
il:object
: item listitem:int
: item to additem_type:int
: type of the item. See vms.dscdefitem_value:int
: value of the item- returns
None
getint(il:object, index:int)->int
Gets the integer at the specified index in the item list.
- parameters
il:object
: item listindex:int
: index of the item to get- returns
- Integer value
gethex(il:object, index:int)->str
Gets the integer at the specified index in the item list and returns it as a hexadecimal string.
- parameters
il:object
: item listindex:int
: index of the item to get- returns
- Hexadecimal string
addstr(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified string to the item list. If item_value
is not None
, item_length
is ignored and the length of the buffer will be the same as the length of item_value
.
- parameters
il:object
: item listitem:int
: item to additem_value:str
: value to add (orNone
)item_length:int
: length of the buffer ifitem_value
isNone
- returns
None
addstrd(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified space-expanded string to the item list. The first byte of the buffer is the length of the string. If item_value
is longer than item_length
, it will be truncated.
- parameters
il:object
: item listitem:int
: item to additem_value:str
: value to additem_length:int
: length of the buffer (the resulting string length is one byte less)- returns
None
addstrn(il:object, item:int, item_value:str, item_length:int)->None
Adds the specified space-expanded string to the item list. If item_value
is longer than item_length
, it will be truncated.
- parameters
il:object
: item listitem:int
: item to additem_value:str
: value to additem_length:int
: length of the buffer- returns
None
getstr(il:object, index:int, flag:int)->str
Gets the string at the specified index in the item list.
- parameters
il:object
: item listindex:int
: index of the item to getflag:int
: if set to1
, the first byte of the resulting string is the length of the string- returns
- String
addbin(il:object, item:int, item_value:int, item_offset:int, item_len:int)->None
Adds a new binary item to the item list. This item will be interpreted as a string.
- parameters
il:object
: item listitem:int
: item to additem_value:int
: value to storeitem_offset:int
: starting byteitem_len:int
: amount of bytes- returns
None
getbyte(il:object, index:int, item_offset:int)->int
Gets the byte at the specified position in the item list.
- parameters
il:object
: item listindex:int
: index of the itemitem_offset:int
: starting byte- returns
- Integer value of the specified byte
vms.lib
Wraps the OpenVMS RTL Library (LIB$) functions.
create_dir(name:str, uic:int, pe:int, pv:int)->int
Creates a directory.
- parameters
name:str
: name of the directory to be created (following the OpenVMS naming conventions)uic:int
: unsigned integer value of the owner UIC:- *
None
: current user - *
0
: owner of the parent directory pe:int
: protection-enable. Refer to the VSI OpenVMS RTL Library (LIB$) Manual for more info about LIB$CREATE_DIR.pv:int
: protection-value- returns
vms.ssdef.SS__CREATED
: one or more directories createdvms.ssdef.SS__NORMAL
: all the specified directories already exist- another error. See in vms.ssdef
date_time()->list
Gets current date and time.
- parameters
None
- returns
- The list:
int
: status code of the operationstr
: resulting string
get_ef()->list
Allocates a local event flag.
- parameters
None
- returns
- The list:
- *
int
: status code of the operation - *
int
: resulting event flag
free_ef(ef:int)->int
Releases the local event flag.
- parameters
ef:int
: local event flag- returns
- Status code of the operation
put_common(common:str)->int
Copies a string into the common area.
- parameters
common:str
: string to copy- returns
- Status code of the operation
get_common()->list
Gets the string from the common area.
- parameters
None
- returns
- The list:
- *
int
: status code of the operation - *
str
: resulting string
get_hostname(flags:int)->list
Gets the host name of the local system.
- parameters
flags:int
if set to1
, the host node name is returned in a parseable format- returns
- The list:
- *
int
: status code of the operation - *
str
: resulting host node name
getjpi(item_code:int, pid:int, pname:str)->list
Gets the specified job/process information as a string.
- parameters
item_code:int
: item identifier code defining the item of the information to be returned. See vms.jpidefpid:int
: process idpname:str
: process name
For valid combination of the values of pid
and pname
, see the OpenVMS RTL Library (LIB$) Manual for LIB$GETJPI. The resulting pid
is not returned.
- returns
- The list:
- *
int
: status code of the operation - *
str
: resulting string
getsyi(item_code:int, node_name:str)->list
Gets system-wide information as a string.
- parameters
item_code:int
: item identifier code defining the item of the information to be returned. See vms.syidefnode_name:str
: node name- returns
- The list:
- *
int
: status code of the operation - *
str
: resulting string - *
int
: resulting cluster system ID
spawn(command:str, input_file:str, output_file:str, flags:int, pname:str)->list
Requests the command language interpreter (CLI) of the calling process to spawn a subprocess for executing CLI commands.
- parameters
command:str
: command to executeinput_file:str
: equivalence name to be associated with the logical name SYS$INPUToutput_file:str
: equivalence name to be associated with the logical name SYS$OUTPUTflags:int
: flag bits that designate optional behavior. See vms.clidefpname:str
: name defined for the subprocess- returns
- The list:
- *
int
: status code of the operation - *
int
: process ID of the spawned process
do_command(command:str)->None
Stops program execution and directs the command language interpreter (CLI) to execute a command that is supplied as the argument.
- parameters
command:str
command to execute- returns
- If successful, it does not return control to the calling program.
vms.sys
Wraps the OpenVMS System Services functions.
asctim(vms_time:int, time_only:int)->list
Converts an absolute or delta time from 64-bit system time format to an ASCII string.
- parameters
vms_time:int
OpenVMS system time. A negative time value represents a delta time.time_only:int
if set to1
, asctim returns the hour only.- returns
- The list:
int
status code of the operationstr
resulting string
bintim(time_str:str)->list
Converts an ASCII string to an absolute or delta time value in the system 64-bit time format.
- parameters
time_str:str
in format:- Absolute Time: dd-mmm-yyyy hh:mm:ss.cc
- Delta Time: dddd hh:mm:ss.cc
- returns
- The list:
int
status code of the operationint
resulting time value
asctoid(name:str)->list
Translates the specified identifier name into its binary identifier value.
- parameters
name:str
identifier name- returns
- The list:
int
status code of the operationint
resulting identifier valueint
resulting identifier attributes. See vms.kgbdef
idtoasc(id_val:int, context:int)->list
Translates the specified identifier value to the identifier name.
- parameters
id_val:int
identifier value. See OpenVMS System Services Reference Manual for SYS$IDTOASCcontext:int
context value used whenidtoasc
is called repeatedly. Must be initialized with the value 0.- returns
- The list:
int
status code of the operationstr
resulting identifier nameint
resulting identifier valueint
resulting identifier attributes. See vms.kgbdefint
resulting context
crembx(tmp:int, maxmsg:int, bufquo:int, promsk:int, acmode:int, mbx_name:string, flags:int)->list
Creates a virtual mailbox device.
- parameters
tmp:int
the first bit specifies a permanent mailboxmaxmsg:int
maximum size of a message (in bytes)bufquo:int
number of bytes of system dynamic memory that can be used to buffer messages sent to the mailboxpromsk:int
protection mask to be associated with the created mailboxacmode:int
access mode to be associated with the channel to which the mailbox is assignedmbx_name:string
logical name to be assigned to the mailboxflags:int
options for the assign operation. See vms.cmbdef- returns
- The list:
int
status code of the operationint
resulting channel
delmbx(channel:int)->int
Marks a permanent mailbox for deletion.
- parameters
channel:int
mailbox channel- returns
- Status code
assign(devnam:str, acmode:int, mbxnam:str, flags:int)->list
Provides a process with an I/O channel.
- parameters
devnam:str
name of the deviceacmode:int
access mode to be associated with the channelmbxnam:str
logical name of the mailbox to be associated with the deviceflags:int
an optional device-specific argument- returns
- The list:
int
status code of the operationint
resulting channel
dassgn(channel:int)->int
Unassigns (releases) an I/O channel.
- parameters
channel:int
number of the I/O channel to be unassigned- returns
- Status code
readvblk(channel:int, max_read:int, block:int, fmod:int)->list
Read from I/O channel.
- parameters
channel:int
I/O channelmax_read:int
amount of bytes to readblock:int
starting blockfmod:int
function code modifiers- returns
- The list:
int
status code of the operationbyte
resulting bufferint
I/O completion code
writevblk(channel:int, buffer:bytes, block:int, fmod:int)->list
Write to I/O channel.
- parameters
channel:int
I/O channelbuffer:bytes
bytes to writeblock:int
starting blockfmod:int
function code modifiers- returns
- The list:
int
status code of the operationint
amount of written bytesint
I/O completion code
cancel(channel:int)->int
Cancel I/O operation.
- parameters
channel:int
I/O channel- returns
- Status code
crelnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
Creates a logical name and specifies its equivalence names.
- parameters
attr:int
attributes to be associated with the logical name. See vms.lnmdeftabnam:str
name of the table in which to create the logical namelognam:str
logical name to be createdacmode:int
access mode to be associated with the logical name. See vms.psldefil:object
item list, created viavms.ile3.new()
See OpenVMS System Services Reference Manual for SYS$CRELNM.
- returns
- Status code
trnlnm(attr:int, tabnam:str, lognam:str, acmode:int, il:object)->int
Returns information about the specified logical name.
- parameters
attr:int
attributes controlling the search for the logical name. See vms.lnmdeftabnam:str
name of the logical name table or the name of a searchlist logical namelognam:str
logical name for which information is to be returnedacmode:int
access mode to be used in the translation. See vms.psldefil:object
item list, created viavms.ile3.new()
See OpenVMS System Services Reference Manual for SYS$TRNLNM.
- returns
- Status code
dellnm(tabnam:str, lognam:str, acmode:int)->int
Deletes all logical names with the specified name.
- parameters
tabnam:str
name of the logical name table or the name of a searchlist logical namelognam:str
logical name to be deletedacmode:int
access mode to be used in the delete operation. See vms.psldef- returns
- Status code
device_scan(search_devnam:str, item_list:object, context:int)->list
Returns the names of all devices that match a specified set of search criteria.
- parameters
search_devnam:str
name of the device for whichdevice_scan
to searchitem_list:object
item list specifying search criteriacontext:int
value used to indicate the current position of the search. On the initial call it must contain0
.
See OpenVMS System Services Reference Manual for SYS$DEVICE_SCAN
- returns
- The list:
int
status code of the operationstr
found device nameint
context
uicstr(uic:int, flags:int)->list
Converts UIC to a string.
- parameters
uic:int
UICflags:int
0
- use "!%I" SYS$FAO format1
- use "!%U" SYS$FAO format
- returns
- The list:
int
status code of the operationstr
UIC string
getdvi(dev_nam:str, item_list:object)->int
Returns information related to the primary and secondary device characteristics of an I/O device.
- parameters
dev_nam:str
the name of the device for which information is to be returneditem_list:object
item list specifying which information about the device is to be returned.
See OpenVMS System Services Reference Manual for SYS$GETDVI
- returns
- Status code
getjpi(pid:int, pnam:str, item_list:object)->list
Returns information about one or more processes of the system or across the OpenVMS Cluster system.
- parameters
pid:int
process identificationpnam:str
name of the processitem_list:object
item list specifying which information about the process or processes is to be returned
See OpenVMS System Services Reference Manual for SYS$GETJPI
- returns
- The list:
int
status code of the operationint
process id
getlki(lki:int, item_list:object)->list
Returns information about the lock database on a system.
- parameters
lki:int
identification of the lock (lock ID) information about which needs to be returneditem_list:object
item list specifying the lock information to be returned
See OpenVMS System Services Reference Manual for SYS$GETLKI
- returns
- The list:
int
status code of the operationint
lock identification
getmsg(msgid:int, flags:int)->list
Returns message text associated with a given message identification code.
- parameters
msgid:int
identification of the message to be retrievedflags:int
message components to be returned
See OpenVMS System Services Reference Manual for SYS$GETMSG
- returns
- The list:
int
status code of the operationstr
message stringint
optional information
getqui(func:int, context:int, item_list:object)->list
Returns information about queues and the jobs initiated from these queues.
- parameters
func:int
function code specifying the function thatgetqui
is to perform. See vms.quidefcontext:int
context stream for this callitem_list:object
item list supplying the information to be used by the function
See OpenVMS System Services Reference Manual for SYS$GETQUI
- returns
- The list:
int
status code of the operationint
context
getrmi(item_list:object)->int
Returns system performance information about the local system.
- parameters
item_list:object
item list specifying which information about the local node is to be returned
See OpenVMS System Services Reference Manual for SYS$GETRMI
- returns
- Status code
getsyi(csid:int, node_name:str, item_list:object)->list
Returns information about the local system or about other systems in an OpenVMS Cluster system.
- parameters
csid:int
OpenVMS Cluster system identificationnode_name:str
name of the node about which information is to be returneditem_list:object
item list specifying which information about the node or nodes to return
See OpenVMS System Services Reference Manual for SYS$GETSYI
- returns
- The list:
int
status code of the operationint
csid
gettim()->list
Returns the current system time in a 64-bit format.
- parameters
None
- returns
- The list:
int
status code of the operationint
current system time
getuai(user_name:str, item_list:object)->int
Returns authorization information about the specified user.
- parameters
user_name:str
name of the user to get authorization information foritem_list:object
item list specifying which information to return
See OpenVMS System Services Reference Manual for SYS$GETUAI
- returns
- Status code
hiber()->int
Allows a process to make itself inactive but to remain known to the system so that it can be interrupted.
- parameters
None
- returns
- Status code
schdwk(pid:int, pname:str, time:int)->list
Schedules the awakening (restart) of a process that has placed itself in the state of hibernation with the Hibernate service.
- parameters
pid:int
process identification (PID) of the process to be awakenedpname:str
name of the process to be awakenedtime:int
time at which the process to be awakened
See OpenVMS System Services Reference Manual for SYS$SCHDWK
- returns
- The list:
int
status code of the operationint
pid
add_holder(id:int, holder:int, attrib:int)->int
Adds a specified holder record to a target identifier.
- parameters
id:int
target identifier granted to the specified holderholder:int
holder identifier that is granted access to the target identifierattrib:int
attributes to be placed in the holder record
See OpenVMS System Services Reference Manual for SYS$ADD_HOLDER
- returns
- Status code
add_ident(name:str, id:int, attrib:int)->list
Adds the specified identifier to the rights database.
- parameters
name:str
identifier name to be added to the rights databaseid:int
identifier to be createdattrib:int
attributes placed in the identifier’s record
See OpenVMS System Services Reference Manual for SYS$ADD_IDENT
- returns
- The list:
int
status code of the operationint
resid
, identifier value assigned by the system
find_held(holder:int, context:int)->list
Returns the identifiers held by the specified holder.
- parameters
holder:int
holder whose identifiers to be foundcontext:int
context value used whenfind_held
is called repeatedly
See OpenVMS System Services Reference Manual for SYS$FIND_HELD
- returns
- The list:
int
status code of the operationint
id
, identifier value that was foundint
attrib
attributes associated with the holder returned inid
int
context
finish_rdb(context:int)->int
Deallocates the record stream and clears the context value.
- parameters
context:int
context value to be cleared- returns
- Status code
forcex(pid:int, pname:str, code:int)->int
Causes an Exit ($EXIT) service call to be issued on behalf of a specified process.
- parameters
pid:int
process identification (PID) of the process to force exitpname:str
process name of the process that is to force exitcode:int
completion code value to be used as the exit parameter- returns
- Status code
rem_holder(id:int, holder:int)->int
Deletes the specified holder record from the target identifier’s list of holders.
- parameters
id:int
binary value of the target identifierholder:int
identifier of the holder being deleted- returns
- Status code
rem_ident(id:int)->int
Removes the specified identifier record and all its holder records (if any) from the rights database.
- parameters
id:int
binary value of the identifier deleted from rights database- returns
- Status code
setuai(user_name:str, item_list:object)->int
Modifies the user authorization file (UAF) record for the specified user.
- parameters
user_name:str
name of the user whose UAF record is modifieditem_list:object
item list specifying which information from the specified UAF record is to be modified
See OpenVMS System Services Reference Manual for SYS$SETUAI
- returns
- Status code
show_intrusion(user_criteria:str, flags:int, context:int)->list
Searches for and returns information about records in the intrusion database matching the caller specifications.
- parameters
user_criteria:str
description of an intruder or suspectflags:int
type of records in the intrusion database about which information is to be returned. NOTE: do not use vms.ciadef.CIA_M_ITEMLIST, becauseuser_criteria
is a stringcontext:int
context information to keep between related calls
See OpenVMS System Services Reference Manual for SYS$SETUAI
- returns
- The list:
int
status code of the operationstr
intruder
, user specification of the matched intruder or suspect record in the intrusion databaseint
expires
, quadword time format indicating the time when the record will expireint
type
, the types of the matched record and the status of the suspectint
count
, number of login failures or break-in attempts
rdb
Wraps the Oracle RDB functions.
Attach(dbname:string)->int
Attaches to the specified database. The string may specify the full path to the RDB database in OpenVMS format or (more commonly) a logical name pointing to the database.
- parameters
dbname:string
path or logical name- returns
- Status code:
0
success-1
failed
CloseCursor(cursor:object)->int
Closes the specified cursor.
- parameters
cursor:object
cursor- returns
- Status code:
0
success-1
failed
Commit()->int
Commits the current database transaction.
- parameters
None
- returns
- Status code:
0
success-1
failed
Data(cursor:object, idx:int)->str
Given a cursor handle and column index (integer), returns the data value for the specified column for the last fetch operation.
- parameters
cursor:object
cursoridx:int
index- returns
- Resulting string
DeclareCursor(name:str, statement:str)->object
Declares a cursor. Inputs are the name for the cursor and the SQL statement. On success the function returns a cursor handle that can be used with OpenCursor()
, FetchCursor()
, and CloseCursor()
.
- parameters
name:str
name for the cursorstatement:str
SQL statement- returns
- Resulting cursor
Detach()->int
Disconnects from the database.
- parameters
None
- returns
- Status code:
0
success-1
failed
Error()->str
Returns a description of the last error.
- parameters
None
- returns
- Resulting error string
Exec(sh:object)->int
Executes a previously prepared SQL statement.
- parameters
sh:object
prepared SQL statement- returns
- Status code:
0
success-1
failed
ExecI(st:str)->int
Executes the supplied SQL statement immediately.
Note: the last letter is a capital 'i'
- parameters
st:str
SQL statement- returns
- Status code:
0
success-1
failed
Fetch(cursor:object)->int
Fetches a row of data for the specified cursor but does not explicitly return the fetched data. The Data()
method can then be used to retrieve individual data values for each column (Ncol()
can be used to determine the number of columns).
- parameters
cursor:object
cursor- returns
- Status code:
1
success0
success, end of stream-1
failed
FetchRow(cursor:object)->list
Fetches a row of data using the specified cursor handle. The fetched data is returned as an list of strings.
- parameters
cursor:object
cursor- returns
- The list of strings
Free(cursor:object)->int
Frees resources associated with the supplied cursor handle for a cursor previously declared via DeclareCursor()
.
- parameters
cursor:object
cursor- returns
- Status code:
0
success
Ncol(cursor:object)->int
Returns the number of columns (values) that would be returned by a fetch for the specified cursor.
- parameters
cursor:object
cursor- returns
- Number of columns
OpenCursor(cursor:object)->int
Opens a cursor using the supplied (previously declared) cursor handle.
- parameters
cursor:object
cursor- returns
- Status code:
0
success-1
failed
Prepare(st:string)->object
Prepares an SQL statement and returns a handle for the prepared statement that can be used in subsequent calls to Exec().
- parameters
st:string
SQL statement- returns
- Resulting prepared statement
Rollback()->int
Rolls back the current database transaction.
- parameters
None
- returns
- Status code:
0
success-1
failed
SetReadonly()->int
Starts a read-only transaction.
- parameters
None
- returns
- Status code:
0
success-1
failed
Sqlcode()->int
Returns the SQLCODE for the last database operation.
- parameters
None
- returns
- Resulting SQL code