zoukankan      html  css  js  c++  java
  • Qt中SQLite数据库编程

    1、要支持数据库编程,首先在工程文件中增加:

    QT +=  sql  
     
    头文件:#include <QtSql> 
    

    2、下面新建一个数据库test,然后新建一个表test_table,在表中新建两个字段:id,name。然后查询表,并显示。

    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");    
       //db.setHostName("fedora12");     
       db.setDatabaseName("test");    
       //db.setUserName("jdh");     
       //db.setPassword("123456");     
       if (!db.open())    
       {    
           cout << "shu ju ku dabukai!!!!!!!" << endl;    
       }    
        
       cout << "shu ju ku cao zuo---------------!!!!!!!" << endl;    
       QSqlQuery q;    
       if (q.exec("CREATE TABLE test_table (id INT PRIMARY KEY,name VARCHAR)") == false)    
       {    
           cout << "shu ju ku dabukai22222222!!!!!!!" << endl;    
       }    
       q.exec("insert into test_table values (8,'LiLei')");    
       q.exec("insert into test_table values (46,'HanMeiMei')");    
       q.exec("select * from test_table");    
       while (q.next())    
       {    
           cout << "caozuo!!" << endl;    
           int id = q.value(0).toInt();    
           QString name = q.value(1).toString();    
           qDebug() << id << name << endl;    
       }    
     QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");  
        //db.setHostName("fedora12");  
        db.setDatabaseName("test");  
        //db.setUserName("jdh");  
        //db.setPassword("123456");  
        if (!db.open())  
        {  
            cout << "shu ju ku dabukai!!!!!!!" << endl;  
        }  
     
        cout << "shu ju ku cao zuo---------------!!!!!!!" << endl;  
        QSqlQuery q;  
        if (q.exec("CREATE TABLE test_table (id INT PRIMARY KEY,name VARCHAR)") == false)  
        {  
            cout << "shu ju ku dabukai22222222!!!!!!!" << endl;  
        }  
        q.exec("insert into test_table values (8,'LiLei')");  
        q.exec("insert into test_table values (46,'HanMeiMei')");  
        q.exec("select * from test_table");  
        while (q.next())  
        {  
            cout << "caozuo!!" << endl;  
            int id = q.value(0).toInt();  
            QString name = q.value(1).toString();  
            qDebug() << id << name << endl;  
        } 
    

      如果数据库名称为:memory:,则只在内存中建立表.

  • 相关阅读:
    IIS是如何处理ASP.NET请求的
    数据库访问性能优化
    通信交互总结
    数据库集群技术漫谈
    VS2010中出现无法嵌入互操作类型
    正则表达式-更新版
    IIS部署SSL证书后提示不可信的解决方案
    CSS水平居中和垂直居中解决方案
    jQuery get/post区别及contentType取值
    配置Tomcat使用https协议
  • 原文地址:https://www.cnblogs.com/fuyanwen/p/3281857.html
Copyright © 2011-2022 走看看