Retrieves any value either from the program variable that is bound with the specified place holder in the SQL statement or PL/SQL block, or from the output variable that is defined for the specified select-list item in the SQL query. This function is used to retrieve values from both scalar and array program variables that are defined for the specified select-list item.
Ora.bdh
OraGetValue( in cCursor : cursor, in sSqlVar : string, out buffer : string, in nBufferSize : number, in nIndex : number optional, in nDatatype : number optional ): boolean;
true if successful
false otherwise. In this case, you can use the OraOciError function to retrieve the Oracle OCI error code
Parameter | Description |
---|---|
cCursor | Cursor associated with a database connection |
sSqlVar |
This parameter can be one of the following:
注: In the latter case, the column
number has to be passed to the function as a string
|
buffer | Variable receiving either the value assigned to the place holder or the data retrieved from a fetched row, as the case may be |
nBufferSize | Size of the variable receiving the value |
nIndex |
Index or row number (optional). This parameter has to be passed to the function whenever retrieving a value assigned to an array place holder or fetching data from multiple rows. It can be one of the following:
|
nDatatype | Specifies which data type to retrieve (optional). See Oracle data types for a list of data types |
var hConnection : number; cCursor : cursor; dcltrans transaction TMain var nAge : number; sName : string; begin OraLogon(hConnection, "user", "password", "orclnet2"); OraOpen(cCursor, hConnection); OraParse(cCursor, sqlSelect); OraBind(cCursor, ":1", SQLT_INT); OraSetInt(cCursor, ":1", 25); OraDefine(cCursor, 1, SQLT_CHR, 32); OraDefine(cCursor, 2, SQLT_INT); OraExec(cCursor); while OraFetch(cCursor) do OraGetValue(cCursor, "1", sName, STRING_COMPLETE); nAge := OraGetInt(cCursor, "2"); write(sName, 32); write(nAge, 5); writeln; end; OraClose(cCursor); OraLogoff(hConnection); end TMain; dclsql sqlSelect: SELECT * FROM persons WHERE age > :1;
Howard 33Michael 44Bobby 61Sara 38