求助:Qt数据库(sqlite)编程

大湾区小明 2010-09-07 09:19:38
帖子在CSDN论坛的这个地址
http://topic.csdn.net/u/20100902/10/9739d9ff-7701-456a-a11d-9c7ef0b99b7f.html?seed=1515215315&r=68114931#r_68114931

麻烦大家看看用什么方法解决比较好!谢谢!
2个帖子都给分,急需帮助!!
...全文
92 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
大湾区小明 2010-09-08
  • 打赏
  • 举报
回复
谢楼上2位,但是不知道你们看了我那个链接的帖子没有,里面有图片,A表中增加一行成分,B表中增加一个成分列,但是数据之类的完全不同。
上善若水邻 2010-09-07
  • 打赏
  • 举报
回复
你是说你要在A表中每增加一行 ,B表也自动增加一行是吗?
很简单啊 你要在A B两个表中用自增ID,然后在两表中各建相同的字段(不相同的也可以),在插入数据的时候用两条SQL语句同时操作两个表就可以了
  • 打赏
  • 举报
回复
你说:A表中每增加一行,新的B表就也增加一行

当然可以,用一个触发器就ok,小问题
大湾区小明 2010-09-07
  • 打赏
  • 举报
回复
目前我是这样来做的:
QSqlDatabase db = QSqlDatabase::database();

QString tableName = "DataRecords" + m_recipeId;
QStringList tableList = db.tables();

if ( !tableList.contains( tableName ) )
{
/* 创建新的数据记录表 */
QSqlQuery query;

query.exec( "create table " + tableName + "(Blank TEXT NULL)" ); //新建带有一列的表
query.exec( "insert into" + tableName + "(Blank)values(NULL)" ); //插入4行
query.exec( "insert into" + tableName + "(Blank)values(NULL)" );
query.exec( "insert into" + tableName + "(Blank)values(NULL)" );
query.exec( "insert into" + tableName + "(Blank)values(NULL)" );
setHeaderData( 0, Qt::Vertical, tr( "Name" ) );//设置第0行的行名
setHeaderData( 1, Qt::Vertical, tr( "Display name" ) );
setHeaderData( 2, Qt::Vertical, tr( "Number" ) );
setHeaderData( 3, Qt::Vertical, tr( "Comment" ) );

就是先创建一个只带一列的新的B表(sql好像不能创建完全的空表),然后插入4行(在以前的B表中是4列),设置行名。然后A表中每增加一行,新的B表就也增加一行。即把行作为字段(属性,也就是一般数据库表的列),列作为记录(一般数据库表的行)。可行吗??

16,215

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧