Mysql For Windows c++

2944 ワード

ネット上ではcの開発について
 
開発環境xpsp 3 boost_1_48_0 STLport-5.2.1 mysql 5.5.20 server
 
Windowsの下にmysql serverを取り付ける
MySQLのインストールディレクトリの下にいくつかのフォルダがあります.
Connector C++1.1.0//このc++の
コネクタC 6.0.2//cの
javaとNetなど...もちろんpythonとかも...
 
ダウンロードできない場合:
http://www.mysql.com/downloads/connector/cpp/
 
これで、もう一つ足りない.h(なぜ提供しないのか分かりませんが)
ここでダウンロード
http://download.csdn.net/detail/wangxvfeng101/4056020
 
まずネット上のmysqlチュートリアルを参考にしてください(これは本稿では紹介しません)
 
試験条件:
データベースwxfのテーブルmytableの内容は次のとおりです.
+-------+------+------------+-----------+
| name  | sex  | birth      | birthaddr |
+-------+------+------------+-----------+
| abccs | f    | 1977-07-07 | china     |
| aaa   | f    | 1987-08-27 | beijin    |
+-------+------+------------+-----------+
 
//試験工程:
#include <iostream>
#include <stdio.h>
#include <mysql_connection.h>
#include <mysql_driver.h>
#include <cppconn/driver.h>
#include <cppconn/exception.h>
#include <cppconn/resultset.h>
#include <cppconn/statement.h>
#include <cppconn/prepared_statement.h>
using namespace std;
using namespace sql;
 
#pragma comment(lib,"mysqlcppconn.lib")
 
void RunConnectMySQL()
{
sql::mysql::MySQL_Driver *driver = NULL;
sql::Connection *con = NULL;
Statement *state = NULL;
ResultSet *result = NULL;
try
{
driver = sql::mysql::get_mysql_driver_instance();
con = driver->connect("tcp://127.0.0.1:3306","root","000000");//     
state = con->createStatement();
state->execute("use wxf");//     wxf         (         ,         )
result = state->executeQuery("select * from mytable");//   wxf.mytale          
}
catch(sql::SQLException & ex)//             
{
cout<<ex.what()<<endl;
return;
}
 
while(result->next())
{
cout<<"name: "<<result->getString("name").c_str()<<endl;//     name    
}
state->close();
}
 
void main()
{
RunConnectMySQL();
getchar();
;
}

 
いくつかの言葉:
なぜかSQLStringオブジェクトはVAのヒントでポインタになる....ああ、これでコンパイルエラーになります.君は->を変えなさい.いいですね.
次のようなエラーが発生します.
__imp_?asStdString@SQLString@sql@@QBEABV?$basic_string@DV?$char_traits@D@stlp_std@@V?$allocator@D@2@@stlp_std@@XZ
mysql c++boost//幸いなことに私は服を着ています....
 
長い間c++コードを書かなかったのかもしれませんが、私はこのようなコードを書かなければなりません.
SQLString strsql = "sss";
string strstd = strql;//ここは間違っています.私はまだ不思議に思っています.同じものがどうしてできないのですか.
SQLStringの定義を見てみましょう.
class CPPCONN_PUBLIC_FUNC SQLString
      {
            std::string realStr;
     ...
         }
//クラスです...マクロではありません.最初はずっとこのマクロと見なしていました.POCOのXMLStringのように...POCOが使いすぎたようです... 
 
 
http://blog.csdn.net/jgood/article/details/5661339
http://dev.mysql.com/tech-resources/articles/mysql-connector-cpp.html#trx