1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 06:17:35 +00:00

LibSQL+SQLServer: Send result column names over IPC to SQL clients

This commit is contained in:
Timothy Flynn 2023-02-03 10:11:15 -05:00 committed by Andreas Kling
parent d6dee8c0e8
commit cb06031180
4 changed files with 10 additions and 8 deletions

View file

@ -89,19 +89,19 @@ Optional<SQL::ExecutionID> SQLStatement::execute(Vector<SQL::Value> placeholder_
auto result = execution_result.release_value();
if (should_send_result_rows(result)) {
client_connection->async_execution_success(statement_id(), execution_id, true, 0, 0, 0);
client_connection->async_execution_success(statement_id(), execution_id, result.column_names(), true, 0, 0, 0);
auto result_size = result.size();
next(execution_id, move(result), result_size);
} else {
if (result.command() == SQL::SQLCommand::Insert)
client_connection->async_execution_success(statement_id(), execution_id, false, result.size(), 0, 0);
client_connection->async_execution_success(statement_id(), execution_id, result.column_names(), false, result.size(), 0, 0);
else if (result.command() == SQL::SQLCommand::Update)
client_connection->async_execution_success(statement_id(), execution_id, false, 0, result.size(), 0);
client_connection->async_execution_success(statement_id(), execution_id, result.column_names(), false, 0, result.size(), 0);
else if (result.command() == SQL::SQLCommand::Delete)
client_connection->async_execution_success(statement_id(), execution_id, false, 0, 0, result.size());
client_connection->async_execution_success(statement_id(), execution_id, result.column_names(), false, 0, 0, result.size());
else
client_connection->async_execution_success(statement_id(), execution_id, false, 0, 0, 0);
client_connection->async_execution_success(statement_id(), execution_id, result.column_names(), false, 0, 0, 0);
}
});