您的位置:首页 > 大数据 > 人工智能

iphone连接mysql 转自<http://hi.baidu.com/4fly/blog>

2013-08-08 19:59 357 查看




iphone里连接远程数据库



转自<http://hi.baidu.com/4fly/blog>

网上查找各方面的资料,终于历尽万苦,在程序中成功连接mysql

下面主要介绍些要天界的主要文件:

include文件夹 mysql的一些基本库文件,网上找到的库文件基本上都不完整,缺少关键的几个文件

my_config.h.in



mysql_version.h.in

继续记录:



1.把include文件夹添加到工程里

2.添加libmysqlclient.a 到framework里

看图:








工程目录截图:





连接数据库代码很简单,部分代码如下

-(void)connectHost:(NSString *)host connectUser:(NSString *)user connectPassword:(NSString *)password connectName:(NSString *)name

{

myconnect = mysql_init(nil);


//新增。设置编码(解决中文乱码问题)

mysql_options(myconnect, MYSQL_SET_CHARSET_NAME, "gb2312");



myconnect = mysql_real_connect(myconnect,[host UTF8String],[user UTF8String],[password UTF8String],[name UTF8String],MYSQL_PORT,NULL,0);

if(!myconnect)

{

printf("error code=%i",mysql_errno(myconnect));

return;

}

NSLog(@"connected to Mysql");

}

-(NSMutableArray*)query:(NSString *)sql

{

if(!myconnect)

{

NSLog(@"Please connect first");

return nil;

}

NSMutableArray *recordsArray = [[[NSMutableArray alloc] init] autorelease];

mysql_query(myconnect, [sql UTF8String]);

MYSQL_RES* result = mysql_store_result(myconnect);

int num_rows = mysql_num_rows(result);

int num_fields = mysql_num_fields(result);

for(int i=0;i<num_rows;i++)

{

MYSQL_ROW row = mysql_fetch_row(result);

NSMutableArray *recordArr = [[NSMutableArray alloc] init];

for(int j=0;j<num_fields;j++)

{

//最新修改,解决中文乱码问题

//中文简体编码:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingDOSChineseSimplif)

//NSString* value= [NSString stringWithUTF8String:row[j]];

NSString* value= [NSString stringWithCString:row[j] encoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingDOSChineseSimplif)];

[recordArr addObject:value];

}

[recordsArray addObject:recordArr];

[recordArr release];

}

return recordsArray;

}



libmysqlclient.a文件 下载地址 :http://download.csdn.net/source/3425857

include mysql 库文件 下载地址 :http://download.csdn.net/source/3425860

iphone程序远程连接mysql实例工程 下载地址 :http://download.csdn.net/source/3425844

最新代码实例(ios6测试通过,支持ARC,支持中文)http://download.csdn.net/detail/mac_fly/4678844

转贴请注明来自<http://hi.baidu.com/4fly/blog>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐