1,在.pro文件中修改 QT += sql ,大致如下
TEMPLATE = app
TARGET =
DEPENDPATH += .
INCLUDEPATH += .
QT +=sql
2,在程序中添加数据库
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
qDebug()<<QString("add database");
//db.setHostName("192.168.1.126");//远程访问
db.setHostName("localhost");
db.setDatabaseName("test");
//db.setDataBaseName("");
db.setUserName("root");
db.setPassword("000000");
if (!db.open())
return db.lastError();
B. QT中使用sql语句查询时,表名通过一个参数来传递的话,这个sql语句怎么写
select * from lineedit into var
lineedit为表名,var为参数,
C. Qt如何实现对SQLite的写入与更新操作的,急!
点击一下查看按钮,会添加一条信息,在pc机上很容易实现了,但在Arm开饭板上,数据库能打开但执行插入的操作的时候总是报错,我把我能想到的可能都想到了,1,修改了一下数据库的权限,2,export
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/Trolltech/QtEmbedded-4.7.0-arm/plugins/sqldrivers
,sqlite库的路径也加上了,但运行结果是一样的,错误提示不是打开数据库失败,就是动态库超出链接队列什么的(英语不太好),总之不行。后来我决定采取比较二的选择,在arm板linux系统上跑sqlite插件,后来还是以失败告终(但得到了好多启发,下片博文讲),无奈我想到的办法是整一个好的sqliteDemo
在板子上跑一下,执行sql语句的时候还是不行,报错信息是打开数据库失败,无奈做了下一步决定,重烧了一下文件系统,和内核,结果还是不行,在崩溃的边缘,向老大求教,捣鼓了一阵,结果把生成的可执行文件放到了根目录下成功了!可以对数据库进行各种操作,我把我自己写的Qt
sqlite的小demo也放到了根目录下结果也成功运行了,很奇怪呀!网上还有人说友善的arm板子对数据库的支持不好。
D. 如何用for循环在qt中实现sql数据库的多行插入
debug时把sql语句复制出来,在数据库链接工具中(如plsql,navicat等)执行一次,可能是你的value中设置了非空字段,也有可能是你的数据库策略不允许插入空.
E. sql语句如何修改字段长度
代码示例:
alter table T1 alter column F1 varchar(10)
一般地,改字段名可以用这条语句:
复制代码代码示例:
alter table A rename column a to c
实际应用中,往往是用J-SQL进行编译,而J-SQL不支持修改字段名。
因此,如果一定要修改字段名,那么只有通过变通的方法了。思路:
1.新建一个字段,取名为c;
2.将字段a的内容拷贝到c;
3.删除字段a;sql修改字段长度的语法:
alter table 表名 modify 字段名 字段类型;sql修改字段长度:
复制代码代码示例:
alter table qtline modify qtl_bidernote VARCHAR2(4000);
标准SQL,对任何数据库都适用
复制代码代码示例:
alter table fzrtmis.reporttemplate modify REPNAME varchar(100);
修改字段名名称:
复制代码代码示例:
ALTER TABLE TABLENAME RENAME COLUMN COL1 TO COL2;
添加字段:
复制代码代码示例:
alter table fzrtmis.itiembuildqk add STATIONSTATE CHAR(1)