zoukankan      html  css  js  c++  java
  • QT连接Linux mysql注意

    windows:

    #define MYSQLDB "QMYSQL"
    #define MYSQLDB_HOSTNAME "192.168.228.168"
    #define MYSQLDB_NAME "im"
    #define MYSQLDB_USERNAME "root"
    #define MYSQLDB_PASSWORD "123456"
    #define MYSQLDB_PORT 3306

    IM_DB_MysqlHelper::IM_DB_MysqlHelper(QWidget *parent/* =0 */,Qt::WFlags/* =0 */)
    {
    db = QSqlDatabase::addDatabase(MYSQLDB);
    db.setHostName(MYSQLDB_HOSTNAME);
    db.setDatabaseName(MYSQLDB_NAME);
    db.setUserName(MYSQLDB_USERNAME);
    db.setPassword(MYSQLDB_PASSWORD);
    db.setPort(MYSQLDB_PORT);
    }

    IM_DB_MysqlHelper::~IM_DB_MysqlHelper()
    {

    }

    /************************************************************************/
    /* 成员方法
    /************************************************************************/
    bool IM_DB_MysqlHelper::CreateConn()
    {
    if(!db.isValid()){
    qDebug() << "not valid!";
    return false;
    }
    else
    {
    if(db.open())
    {
    qDebug() << "SUCCEED OPEN DB";
    return true;
    }
    qDebug() << "FAILED TO OPEN DB";
    return false;
    }
    }

    bool IM_DB_MysqlHelper::Read(QString sSql)
    {
    QSqlQuery query;
    if(query.exec(sSql)){
    while(query.next()){
    qDebug() << "id : " << query.value(0).toInt();
    qDebug() << "username : " << query.value(1).toString();
    qDebug() << "password : " << query.value(2).toString();
    }
    }
    return true;
    }

    linux上注意事项:

    需要给数据库设置访问权限,起初我认为是端口号不对,vi /etc/my.cnf发现端口是3306

    1.进入mysql,输入 mysql -p123456 (密码是123456)

    2.设置访问权限

      grant all privileges on im.* to root@'%' identified by '123456';

      grant privileges *.* to root@'%' identified by '123456';

    发现成功输出:

    SUCCEED OPEN DB
    id : 1
    username : "admin"
    password : "111111"
    id : 2
    username : "cda"
    password : "222222"
    id : 3
    username : "pcupso"
    password : "333333"

    OK,linux上的权限设置是关键

  • 相关阅读:
    JQuery
    JS
    PHP
    Java并发编程:CopyOnWrite容器的实现
    Java并发编程:并发容器ConcurrentHashMap
    Java并发编程:同步容器
    Java并发编程:ThreadLocal
    Java并发编程:sleep、wait、yield对比
    Java并发编程:volatile关键字解析
    Java并发编程:Lock
  • 原文地址:https://www.cnblogs.com/hermit/p/3599623.html
Copyright © 2011-2022 走看看