2009-12-14 108 views
0

我有一些與sqlite的問題。 我要插入一些數據到數據庫中,但是,當我使用功能sqlite3語法錯誤

sqlite3_exec(db,sql,0,0,&zErrMsg);

的zErrMsg返回:

near '\x90' syntax error

代碼:

(void) ExecuteCommand:(NSString *)command DBRef:(sqlite3 *)db 
{ 
    const char *sql = [command UTF8String];  
    char *zErrMsg = 0; 

    sqlite3_exec(db,sql,0,0,&zErrMsg);  
    sqlite3_free(zErrMsg); 
} 

我成功之前插入一些字符。但是當我這次嘗試時,我失敗了。由於我這次使用的角色會出現問題嗎?

的SQL語句是:

insert into b_1663 values(1,'1663',' \u7b2c1\u7ae0','\u9752\u86c7',' \u7b2c1\u7ae0 

\u6211\u4eca\u5e74\u4e00\u5343\u4e09\u767e\u591a\u5c81\u3002 

\u4f4f\u5728\u897f\u6e56\u4e00\u9053\u6865\u7684\u5e95\u4e0b\u3002\u8fd9\u6865\u53eb"\u65ad\u6865"\u3002\u4ece\u524d\u5b83\u4e0d\u53eb\u65ad\u6865\uff0c\u53eb\u6bb5\u5bb6\u6865\u3002 

\u51ac\u5929\u3002\u6211\u5403\u9971\u4e86\uff0c\u5341\u5206\u6175\u5012\u5934\u5927\u7761\u3002\u7761\u5728\u8eab\u7554\u7684\u662f\u6211\u59ca\u59ca\u3002\u6211\u4eec\u76d8\u9519\u7ea0\u7f20\u7740\uff0c\u4e0d\u77e5\u4eba\u95f4\u4f55\u4e16\u3002 

"\u8fd9\u662f\u9ad8\u4eba\uff01" 

\u6211\u95ee\uff1a 

"\u548c\u5c1a\u4e5f\u662f\u4eba\uff1f" 

\u2014\u2014\u548c\u5c1a\u662f"\u4eba"\uff1f\u8fd9\u4e2a\u96c4\u4f1f\u505a\u5cb8\u7684\u548c\u5c1a\uff0c\u5e94\u8be5\u6bd4\u4eba\u9ad8\u660e\u70b9\u5427\uff1f 

\u4ed6\u4e0a\u8def\u4e86\u3002 

\u524d\u9762\u662f\u90a3\u8001\u548c\u5c1a\u3002 

'); 

表結構:

create table b_1663(
    Num int primary key, 
    b_id varchar(20), 
    b_sec_title varchar(50), 
    b_name varchar(20), 
    content text 
); 

告訴我,如果你事先知道answer.Thanks!

+2

您知道,如果我們能夠看到您要執行的實際語句,將會有幫助。 – 2009-12-14 03:44:30

+0

您仍然沒有向我們展示您要執行的SQL語句。 – 2009-12-14 03:50:27

+0

我們需要知道** sql **包含的內容 – 2009-12-14 03:51:23

回答

0

只是一個猜測:

你可能需要引用字符串(即替代,導致解析器BARF字符),或者更好的,使用參數化查詢。參數化查詢如下所示:

sql="insert foo into bar values (?,?)" 
sqlexec(sql, data) 
+0

如果是這樣,錯誤應該在第一行'const char * sql = [command UTF8String];'不在zErrMsg上。 – YOU 2009-12-14 04:42:58

+0

當我創建表時,它工作正常,zErrMsg爲零。 但是當我插入東西時,它有語法錯誤。 請問由於sql語句或代碼的問題? – user230965 2009-12-14 04:46:44

+0

語法錯誤?所以你根本無法編譯或有異常? – YOU 2009-12-14 04:51:21

相關問題