现在正做一个接口,通过不同的连接字符串 *** 作不同的数据库(数据库培训数据库认证)。
要用到MySQL(MySQL认证Mysql培训)数据库,以前没用过这个数据库,用aC++(C++培训)ess和sqlserver比较多。
通过网上的一些资料和自己的摸索,大致清楚了C++连接mysql的方法。
盐城IT培训http://www.kmbdqn.cn/认为可以通过2种方法实现。
第一种方法是利用ADO连接,第二种方法是利用mysql自己的api函数进行连接。
第一种方法可以实现我当前的需求,通过连接不同的字符串来连接不同的数据库。
暂时只连接了mysql,sqlserver,oracle,access。
对于access,因为它创建表的SQL语句不太兼容标准SQL语句,需要做一些处理,这里暂时不说。
第二种方法只能针对于mysql数据库的连接,不过用这种方法不用安装MyODBC服务器程序。
不管用哪种方法,首先需要安装Mysql数据库,安装方法请看“mysql安装及一些注意点”。
最好安装一个Navicatformysql,方便 *** 作mysql数据库。
下面分别说下这两种方法:(一)通过ADO连接MySql数据库1、通过ADO连接MySql数据库,首先得安装MyODBC服务器程序。
MyODBC版本要和MySql的版本对应上,否则会连接不上数据库。
我用的版本分别是mysql-5.1.48-win32.msi和mysql-connector-odbc-5.1.5-win32.msi。
安装好后,点击开始菜单->设置->控制面板->管理工具->数据源(ODBC)->用户DSN->添加->选择MySQLODBC5.1Driver。
如下图:然后双击MySQLODBC5.1Driver进行配置。
配置好可以点Test进行下测试(如下图),如果能连上会d出connectionsuccessful对话框。
1、首先输入代码
public void SendByHttpClient(final String id, final String pw){
new Thread(new Runnable() {
@Override
public void run() {
try {
HttpClient httpclient=new DefaultHttpClient()
HttpPost httpPost=new HttpPost("http://web应用部署服务器上的IP地址:/HttpClientDemo/Login")//服务器地址,指向Servlet
List<NameValuePair>params=new ArrayList<NameValuePair>()//将id和pw装入list
params.add(new BasicNameValuePair("ID",id))
params.add(new BasicNameValuePair("PW",pw))
final UrlEncodedFormEntity entity=new UrlEncodedFormEntity(params,"utf-8")//以UTF-8格式发送
httpPost.setEntity(entity)
HttpResponse httpResponse= httpclient.execute(httpPost)
if(httpResponse.getStatusLine().getStatusCode()==200)//在200毫秒之内接收到返回值
2、然后再输入下方的代码:
{
HttpEntity entity=httpResponse.getEntity()
String response=EntityUtils.toString(entity1, "utf-8")//以UTF-8格式解析
Message message=new Message()
message.what=USER_LOGIN
message.obj=response
handler.sendMessage(message)使用Message传递消息给线程
}
}
catch (Exception e) {
e.printStackTrace()
}
}
}).start()
}3、最终,测试结果图,如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)