我有一个很长的 sqlite 查询:
const char *sql_query = "SELECT statuses.word_id FROM lang1_words, statuses WHERE statuses.word_id = lang1_words.word_id ORDER BY lang1_words.word ASC";
如何将它分成多行以使其更易于阅读?如果我执行以下操作:
const char *sql_query = "SELECT word_id FROM table1, table2 WHERE table2.word_id = table1.word_id ORDER BY table1.word ASC";
我收到一个错误。
有没有办法在多行中编写查询?
有两种方法可以将字符串拆分为多行:
每个字符串在其自己的行上。仅适用于字符串:
普通C:
char *my_string = "Line 1 " "Line 2";
目标-C:
NSString *my_string = @"Line1 " "Line2"; // the second @ is optional
使用\- 可用于任何表达式:
\
char *my_string = "Line 1 \ Line 2";
NSString *my_string = @"Line1 \ Line2";
第一种方法更好,因为没有很多空格。然而,对于 SQL 查询,两者都是可能的。
注意:使用 a #define,您必须添加一个额外的\来连接两个字符串:
#define
#define kMyString "Line 1"\ "Line 2"