读书人

select * from sqlite_sequence;这一句

发布时间: 2013-11-09 17:06:34 作者: rapoo

select * from sqlite_sequence;这一句在sqllite里面能执行?
创建了个自增序列,但是发现得手工传值才能保存
create table user(_id int auto_increment primary key not null,username text,userpwd text);


然后手工传值也行,只是如何取序列又是个问题了,后面发现sqlite这个关系数据库是不是不支持序列啊,网上居然搜不到这种资料,奇怪之极,然后有几个人说用这句,select * from sqlite_sequence;

可是我这里直接报:

sqlite> select * from sqlite_sequence;
select * from sqlite_sequence;
Error: no such table: sqlite_sequence
sqlite>

这到底是怎么回事呢?
sqlite建立序列
[解决办法]
select * from sqlite_sequence;
个人觉得这个不是查询表的sql命令么?,sqlite_sequence被解释成了表名
还有兄弟,你说的取序列是什么意思?
[解决办法]
兄弟,你以前用oracle的吧,sqlite中不用序列的,你的表已经自动增长了,
插入数据时不提供_id的值就自动增长,提供了就用你提供的值了
例如:
insert into user(username,userpwd) values('tom','pass')
这样_id的值就是自动增长的。

insert into user(_id,username,userpwd) values(10,'tom','pass')
这样_id值就是你提供的10了。
[解决办法]
另外,_id列建议定义为integer primary key

读书人网 >Android

热点推荐