小编ran*_*omx的帖子

在MySQL中:如何将表名作为存储过程和/或函数参数传递?

例如,这不起作用:

DELIMITER //
CREATE PROCEDURE countRows(tbl_name VARCHAR(40))
  BEGIN
    SELECT COUNT(*) as ct FROM tbl_name;
  END //

DELIMITER ;
CALL countRows('my_table_name');
Run Code Online (Sandbox Code Playgroud)

生产:

ERROR 1146 (42S02): Table 'test.tbl_name' doesn't exist
Run Code Online (Sandbox Code Playgroud)

但是,这可以按预期工作:

SELECT COUNT(*) as ct FROM my_table_name;
Run Code Online (Sandbox Code Playgroud)

在select语句中将参数用作表名需要什么语法?这甚至可能吗?

mysql sql stored-procedures mysql-error-1146

22
推荐指数
1
解决办法
2万
查看次数

如何在SBJSON中测试NSDictionary中的null?

我有一个API返回一个JSON编码的数据字符串,返回一个实数或"null"作为一个值.只要JSON包含数字或字符串值,一切都按预期工作.如果key:value对值为null,则下面的代码崩溃.

当从SBJSON获取NULL时,如何正确测试NSDictionary objectForKey?

当API 为filetype返回null时,下面的代码在if()行崩溃.

我的Objective-C代码尝试测试期望值:

if (1 == [[task valueForKey:@"filetype"] integerValue]) {
    // do something
} else {
    // do something else
}
Run Code Online (Sandbox Code Playgroud)

API JSON输出:

{"tclid":"3","filename":null,"filetype":null}
Run Code Online (Sandbox Code Playgroud)

NSDictionary的NSLog()输出是:

task {
    filename = "<null>";
    filetype = "<null>";
    tclid = 3;
}
Run Code Online (Sandbox Code Playgroud)

objective-c ios5 xcode4.3

0
推荐指数
1
解决办法
854
查看次数