1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-24 11:21:21 +03:00

A test case for Bug#14845 "mysql_stmt_fetch returns MYSQL_NO_DATA

when COUNT(*) is 0". The bug itself cannot be repeated.
This commit is contained in:
konstantin@mysql.com
2005-11-18 17:55:52 +03:00
parent 385082ede0
commit 159bf8832e
3 changed files with 84 additions and 0 deletions

View File

@@ -14546,6 +14546,49 @@ static void test_bug13524()
myquery(rc);
}
/*
Bug#14845 "mysql_stmt_fetch returns MYSQL_NO_DATA when COUNT(*) is 0"
*/
static void test_bug14845()
{
MYSQL_STMT *stmt;
int rc;
const ulong type= CURSOR_TYPE_READ_ONLY;
const char *query= "select count(*) from t1 where 1 = 0";
myheader("test_bug14845");
rc= mysql_query(mysql, "drop table if exists t1");
myquery(rc);
rc= mysql_query(mysql, "create table t1 (id int(11) default null, "
"name varchar(20) default null)"
"engine=MyISAM DEFAULT CHARSET=utf8");
myquery(rc);
rc= mysql_query(mysql, "insert into t1 values (1,'abc'),(2,'def')");
myquery(rc);
stmt= mysql_stmt_init(mysql);
rc= mysql_stmt_attr_set(stmt, STMT_ATTR_CURSOR_TYPE, (const void*) &type);
check_execute(stmt, rc);
rc= mysql_stmt_prepare(stmt, query, strlen(query));
check_execute(stmt, rc);
rc= mysql_stmt_execute(stmt);
check_execute(stmt, rc);
rc= mysql_stmt_fetch(stmt);
DIE_UNLESS(rc == 0);
rc= mysql_stmt_fetch(stmt);
DIE_UNLESS(rc == MYSQL_NO_DATA);
/* Cleanup */
mysql_stmt_close(stmt);
rc= mysql_query(mysql, "drop table t1");
myquery(rc);
}
/*
Read and parse arguments and MySQL options from my.cnf
@@ -14805,6 +14848,7 @@ static struct my_tests_st my_tests[]= {
{ "test_bug14210", test_bug14210 },
{ "test_bug13488", test_bug13488 },
{ "test_bug13524", test_bug13524 },
{ "test_bug14845", test_bug14845 },
{ 0, 0 }
};