2011-09-22 105 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