zoukankan      html  css  js  c++  java
  • mysql connector c++ 1.1 API初步体验

    mysql connector c++ 1.1 API初步体验

    1,常用的头文件

    #include <mysql_connection.h>
    #include <mysql_driver.h>
    #include <cppconn/driver.h>
    #include <cppconn/statement.h>
    #include <cppconn/prepared_statement.h>
    #include <cppconn/resultset.h>
    

    2,创建连接

    #define DBHOST "tcp://127.0.0.1:3306"
    #define USER "username"
    #define PASSWORD "pwd"
    
    sql::mysql::MySQL_Driver *driver;
    sql::Connection *con;
    sql::Statement *stmt;
    
    driver = sql::mysql::get_mysql_driver_instance();
    con = driver->connect(DBHOST, USER, PASSWORD);
    

    3,选择要使用的database的名字

    con->setSchema("database_name");
    

    4,设置连接的属性,例子是设置连接的字符集

    con->setClientOption("characterSetResults", "utf8");
    

    5,判断连接是否建立成功

    if(con->isValid()){
        std::cout << "connected!" << std::endl;
    }
    

    6,执行insert语句

    sql::PreparedStatement* pstmt;
    std::string sqlOp="insert into user(name,nickname,password, phone) values(?,?,?,?)";
    pstmt=con->prepareStatement(sqlOp);
    pstmt->setString(1,"李四2");
    pstmt->setString(2,"aaaa男2");
    pstmt->setString(3,"aaaa!");
    pstmt->setString(4,"123123");
    pstmt->execute();
    

    7,执行查询语句

    sql::Statement *stmt;
    sql::ResultSet  *res;
    std::string qry = "select * from user";
    stmt = con->createStatement();
    //选择使用的数据库的名字
    stmt->execute("use cloud_disk");
    res = stmt->executeQuery(qry);
    while(res->next()){
      std::cout << res->getInt(1);
      std::cout << res->getString(2) << std::endl;
    }
    

    8,释放资源

    • 除了sql::mysql::MySQL_Driver *driver指针,都需要手动调用delete释放

      delete res;
      delete stmt;
      delete con;
      

    c/c++ 学习互助QQ群:877684253

    本人微信:xiaoshitou5854

  • 相关阅读:
    ---Install Oracle Java 11 SE under Ubuntu
    ---个人英语单词收集!
    ---Android alarm使用
    ---FLAG_NO_CREATE 的用途!
    ---Englist Word Memo
    ---Ubuntu安装后要做的几件重要的事情 (适合Ubuntu机子的开发人员)
    ---Android egl/egls 概念
    --- Checking fs of the mounted partitions on Android device
    移动应用论坛——如何“玩赚”微信
    Android复制assets目录下的图片到内存
  • 原文地址:https://www.cnblogs.com/xiaoshiwang/p/11547900.html
Copyright © 2011-2022 走看看