MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / API_ROUTINE isc_dsql_describe_bind

Function API_ROUTINE isc_dsql_describe_bind

src/yvalve/why.cpp:2242–2266  ·  view source on GitHub ↗

Describe input parameters for a prepared statement.

Source from the content-addressed store, hash-verified

2240
2241// Describe input parameters for a prepared statement.
2242ISC_STATUS API_ROUTINE isc_dsql_describe_bind(ISC_STATUS* userStatus, isc_stmt_handle* stmtHandle,
2243 USHORT /*dialect*/, XSQLDA* sqlda)
2244{
2245 StatusVector status(userStatus);
2246 CheckStatusWrapper statusWrapper(&status);
2247
2248 try
2249 {
2250 RefPtr<IscStatement> statement(translateHandle(statements, stmtHandle));
2251
2252 statement->checkPrepared(isc_info_unprepared_stmt);
2253
2254 RefPtr<IMessageMetadata> parameters(REF_NO_INCR,
2255 statement->statement->next->getInputMetadata(&statusWrapper));
2256 status.check();
2257
2258 sqldaDescribeParameters(sqlda, parameters);
2259 }
2260 catch (const Exception& e)
2261 {
2262 e.stuffException(&statusWrapper);
2263 }
2264
2265 return status[1];
2266}
2267
2268
2269// Execute a non-SELECT dynamic SQL statement.

Callers

nothing calls this directly

Calls 6

translateHandleFunction · 0.85
sqldaDescribeParametersFunction · 0.85
checkPreparedMethod · 0.80
getInputMetadataMethod · 0.45
checkMethod · 0.45
stuffExceptionMethod · 0.45

Tested by

no test coverage detected