2012-02-07 95 views
0

我正在運行一個LIKE語句問題。 的情況是:在Objective-C中使用SQLite 3中的LIKE語句

  1. ,我已把從通訊錄該號碼相關到應用程序的數據庫電話號碼和姓名。

  2. 然後我在UITableView的燒製此查詢顯示該名字......

    NSString *sqlTemp =[NSString stringWithFormat:@"select name from phoneData where number like %'%@'%",number1]; 
    

    number1(NSString *),我使用的是編號的格式像這樣(+international country code number)。但是,保存在數據庫中的編號可能沒有國家代碼,也沒有前綴「+」符號。

所以我的問題是,即使數不按國際電話號碼保存在電話本,我怎麼能保證它的其他數字匹配中的數字?

任何人都可以告訴我一些解決方案嗎?

回答

1

這裏是你可以做什麼:

NSRange range = NSMakeRange (3, [number1 length] - 3); 
NSString *noPrefixNumber = [number1 substringWithRange:range]; 
NSString *sqlTemp =[NSString stringWithFormat:@"select name from phoneData where number like %'%@'%",noPrefixNumber ]; 
+0

你的答案包含的代碼在語法上不合法。它看起來像一條線被完全省略。請編輯你的答案來解決這個問題。 – 2012-02-07 12:00:54

+0

Thnx for your reply,但只顯示不符合國際代碼的名稱。 – user968597 2012-02-07 12:01:53