首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

qsqlite数据库有关问题

2013-05-02 
qsqlite数据库问题我创建一个表create table a(id integer primary key,view_id int,a int)主键自增长,我

qsqlite数据库问题
我创建一个表create table a(id integer primary key,view_id int,a int);

主键自增长,我想在插入表的时候让view_id和id的值相同,由于我要从两个不同窗口取值放入这个表中,将view_id子增长时,如何插入NULL,那么view_id为空,如果初始为1,那么另外一个要如何做?难道每次插入的时候都要先取出id的大小,然后再给view_id赋值吗?

请问要如何操作?



求大牛指点下思路。

[解决办法]
insert之前对主键ID取最大值,+1就是view_id的值了。
[解决办法]
可不可以约定view_id与id之间的一个关系式
[解决办法]

引用:
我创建一个表create table a(id integer primary key,view_id int,a int);

主键自增长,我想在插入表的时候让view_id和id的值相同,由于我要从两个不同窗口取值放入这个表中,将view_id子增长时,如何插入NULL,那么view_id为空,如果初始为1,那么另外一个要如何做?难道每次插入的时候都要先取出id的……


我觉得楼主最大的问题是要解决资源共享问题,建议你在同一个函数里拼凑SQL语句,也就是说你多个窗口要写库时,将参数传到统一的地方处理(拼凑SQL语句,这样排队处理可以保证你的ID是唯一的)。关于ID的取值2楼已经说的很明白了,你可以启动时只查一次ID就行,在每次拼凑SQL语句的时候更新它。

热点排行