diff --git a/lib/modules/Sql.pmod/sql_array_result.pike b/lib/modules/Sql.pmod/sql_array_result.pike index d83a7669d1f5b039c36fb073f98b61484b531e1b..c597eead9070f0aa006b50d2536876166512a2e8 100644 --- a/lib/modules/Sql.pmod/sql_array_result.pike +++ b/lib/modules/Sql.pmod/sql_array_result.pike @@ -49,3 +49,8 @@ int|array(string|int) fetch_row() { index++; return res; } + +this_program next_result() +{ + return 0; +} diff --git a/lib/modules/Sql.pmod/sql_object_result.pike b/lib/modules/Sql.pmod/sql_object_result.pike index 9cd83c7dbdddb81641750202c9b45d5bbb1793d3..f27f6d5c0bcf3b30fe7722eeadc72c3938721d0b 100644 --- a/lib/modules/Sql.pmod/sql_object_result.pike +++ b/lib/modules/Sql.pmod/sql_object_result.pike @@ -15,6 +15,11 @@ int num_rows() { return master_res->num_rows(); } +int num_fields() +{ + return master_res->num_fields(); +} + int eof() { return master_res->eof(); } @@ -38,3 +43,9 @@ int|array(string|int) fetch_row() { index++; return master_res->fetch_row(); } + +this_program next_result() +{ + if (master_res->next_result) return master_res->next_result(); + return 0; +} diff --git a/lib/modules/Sql.pmod/sql_result.pike b/lib/modules/Sql.pmod/sql_result.pike index aacd24b624a9b6d06b7415a2d9df1abb561c7729..6cde8c26a379b9de5ed303f3b443d883e3199262 100644 --- a/lib/modules/Sql.pmod/sql_result.pike +++ b/lib/modules/Sql.pmod/sql_result.pike @@ -6,8 +6,12 @@ #pike __REAL_VERSION__ -//! Implements the generic result of the SQL-interface. +//! Implements the generic result base class of the SQL-interface. //! Used for return results from SQL.sql->big_query(). +//! +//! You typically don't get a direct clone of this class, +//! but of a class that inherits it, like @[sql_array_result] +//! or @[sql_object_result]. //! The actual result. mixed master_res; @@ -38,10 +42,7 @@ protected string _sprintf(int type, mapping|void flags) int num_rows(); //! Returns the number of fields in the result. -int num_fields() -{ - return master_res->num_fields(); -} +int num_fields(); //! Returns non-zero if there are no more rows. int eof(); @@ -83,11 +84,7 @@ int|array(string|int|float) fetch_row(); //! //! @throws //! May throw the same errors as @[Sql.Sql()->big_query()] et al. -this_program next_result() -{ - if (master_res->next_result) return master_res->next_result(); - return 0; -} +this_program next_result(); // --- Iterator API