iphone连接mysql 转自<http://hi.baidu.com/4fly/blog>
2013-08-08 19:59
357 查看
iphone里连接远程数据库
网上查找各方面的资料,终于历尽万苦,在程序中成功连接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>
相关文章推荐
- 苹果iPhone连接wifi就进去www.apple.com主页 下边显示 <HTML><HEAD><TITLE>Success</TITLE></HEAD><BODY>Success</BODY>
- JDBC连接mysql<PreparedStatement>
- <iphone>连接iphone无法获得照片
- Java学习笔记之<JDBC连接MySQL的步骤>
- 苹果iPhone连接wifi就进去www.apple.com主页 下边显示 <HTML><HEAD><TITLE>Success</TITLE></HEAD><BODY>Success</BODY>
- php+js+mysql设计的仿webQQ-<7>聊天消息的发送与刷新
- <Unity3D>unity连接数据库MySQL
- 【MySql】使用记录<一>
- ios菜鸟之路:<a href ="http://www.baidu.com">xxxx</a>提取xxxx的3种方法
- resin启动报错:guava-15.0.jar!/META-INF/beans.xml:5: <beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"> is an unexpec
- Mysql登录提示1045 error:access denied for user 'root'@'localhost <using password: yes>
- <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>标签再使用时报错
- 【MySql】使用记录<七>
- R语言学习之<连接数据库>
- moss 无法对开始地址 <http://....> 进行爬网。
- this is a test:::"><img src=hi onerror=alert(document.cookie)>
- 【JS】【客户端】脚本化HTTP —— 借助<script>发送HTTP请求:JSONP
- IE8兼容<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
- <META HTTP-EQUIV="Refresh" CONTENT="0;URL=cmsview/pages/jsp/frame.jsp">
- 关于标签<meta http-equiv="X-UA-Compatible" content="IE=edge" />