MySql游标获取不返回主键字段

MySql游标获取不返回主键字段,mysql,null,cursor,primary-key,Mysql,Null,Cursor,Primary Key,我有一个简单的游标,用于获取表的主键。通过查看结果,获取的主键列的每个值都是null。如果将游标的查询作为独立查询运行,它将正确返回结果。此表引用了带有主键值的my Account表。如果我将“SELECT PrimaryKeyId”更改为“SELECT AccountId”,它将正确地获取字段的值 我错过了什么 DECLARE testtableid INT UNSIGNED; DECLARE accountid INT UNSIGNED DEFAULT getAccountId(inUser

我有一个简单的游标,用于获取表的主键。通过查看结果,获取的主键列的每个值都是null。如果将游标的查询作为独立查询运行,它将正确返回结果。此表引用了带有主键值的my Account表。如果我将“SELECT PrimaryKeyId”更改为“SELECT AccountId”,它将正确地获取字段的值

我错过了什么

DECLARE testtableid INT UNSIGNED;
DECLARE accountid INT UNSIGNED DEFAULT getAccountId(inUserLoginId);
DECLARE cur CURSOR FOR SELECT TestTableId
                                 FROM testtable
                                WHERE AccountId = accountId;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

OPEN cur;    

named_loop: LOOP

    FETCH cur INTO testtableid ;

    IF done
    THEN
        LEAVE named_loop;
    END IF;
END named_loop;

CLOSE cur;

我总是忘记我在Windows环境下开发MySql数据库,注意区分大小写,尽管这只适用于Linux环境

查询:

DECLARE testtableid INT;
SELECT TestTableId FROM testable
当不在区分大小写的环境中执行时,选择具有相同的不区分大小写名称的局部变量。此值为NULL,因为它未声明


我把这件事搁在一边,希望有一天我能帮别人省下一个小时的挫败感。:)

什么是
TestTableId
字段类型?