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

Function API_ROUTINE isc_dsql_describe

src/yvalve/why.cpp:2214–2238  ·  view source on GitHub ↗

Describe output parameters (columns) for a prepared statement.

Source from the content-addressed store, hash-verified

2212
2213// Describe output parameters (columns) for a prepared statement.
2214ISC_STATUS API_ROUTINE isc_dsql_describe(ISC_STATUS* userStatus, isc_stmt_handle* stmtHandle,
2215 USHORT /*dialect*/, XSQLDA* sqlda)
2216{
2217 StatusVector status(userStatus);
2218 CheckStatusWrapper statusWrapper(&status);
2219
2220 try
2221 {
2222 RefPtr<IscStatement> statement(translateHandle(statements, stmtHandle));
2223
2224 statement->checkPrepared(isc_info_unprepared_stmt);
2225
2226 RefPtr<IMessageMetadata> columns(REF_NO_INCR,
2227 statement->statement->next->getOutputMetadata(&statusWrapper));
2228 status.check();
2229
2230 sqldaDescribeParameters(sqlda, columns);
2231 }
2232 catch (const Exception& e)
2233 {
2234 e.stuffException(&statusWrapper);
2235 }
2236
2237 return status[1];
2238}
2239
2240
2241// Describe input parameters for a prepared statement.

Callers

nothing calls this directly

Calls 6

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

Tested by

no test coverage detected