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


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>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值