2011-09-22 114 views
1

我是這裏的新手。我想生成使用下面的代碼的UUID ..將UUID存儲在sqlite管理器中

- (NSString *)GetUUID 
{ 
    CFUUIDRef theUUID = CFUUIDCreate(NULL); 
    CFStringRef string = CFUUIDCreateString(NULL, theUUID); 
    //CFUUIDBytes number = CFUUIDGetUUIDBytes (theUUID); 
    DLog(@"Howwww :%@", theUUID); 
    CFRelease(theUUID); 
    return [(NSString *)string autorelease]; 
} 

我得到的結果在一個字符串作爲..

NSString *result = [self GetUUID]; 

現在的問題是,我無法將其存儲我的sqlite的內數據庫。我試圖使用語句

sqlite3_bind_text(compiledStatement, 10, [_idNumber UTF8String], -1, SQLITE_TRANSIENT); 

請誰能幫助我在這裏將其存儲在一個VARCHAR列。謝謝..

回答

0

下面是一個方法,將UUID作爲NSString返回,只需將其作爲字符串保存在數據庫中即可。

- (NSString *)newUUID 
{ 
    CFUUIDRef theUUID = CFUUIDCreate(NULL); 
    CFStringRef string = CFUUIDCreateString(NULL, theUUID); 
    CFRelease(theUUID); 
    return (NSString *)string; 
} 

如果你需要一個C字符串:

NSString *uuidString = [self newUUID]; 
const char *uuidCString = [uuidString cStringUsingEncoding:NSASCIIStringEncoding]; 
+0

我將其保存在數據庫中爲NSString的..但它不保存它在某種程度上..其節省一些其他的價值.. – Hadi