SQLite 大师:如何显示有关文件的非常详细的元数据?
我遇到过这样的情况:对表的简单查询在 Flex 中返回不正确的值,但在 SQLite 的其他 GUI 前端中则不然。
select title from ttl where ttl.ttl = 140 // ttl 也是 PK 列的列名,
返回属于 PK = 1400 的行的标题。
ttl.ttl 被定义为 int 数据类型。
同样,问题仅在 Flex 中出现,而不是在 SQLite 的其他 GUI 前端中出现,这些前端返回正确的标题值。
我想尽可能多地了解有关此表的底层信息,以帮助解决问题。如何查询内部情况?
I have a situation where a simple query against a table is returning incorrect values in Flex, but not in other GUI front-ends to SQLite.
select title from ttl where ttl.ttl = 140 // ttl is also the column name of the PK column
is returning the title that belongs to the row whose PK = 1400.
ttl.ttl is defined as int datatype.
Again, the problem manifests itself only in Flex, not in other GUI front-ends to SQLite, which are returning the correct title value.
I'd like to know as much low-level info about this table as possible, to help troubleshoot the problem. How can I query the internals?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我绝对不是大师,但希望可以提供一些有用的信息。
一个。 sqlite 命令行工具
如果您正在运行 sqlite3 命令行访问程序,您可以键入“.tables”来获取所有表的列表。或者您可以输入“.schema”来查看完整的数据库架构,包括所有表和索引。
b.通过代码
请参阅此处。
编辑:
阅读您在 Adobe 论坛上的帖子后,我认为您的问题就在这里:
您应该将您的
ttlid
声明为INTEGER PRIMARY KEY
但不是INT PRIMARY KEY
代码>.通过删除
ttlid
ASINTEGER PRIMARY KEY
,它将成为rowid
的别名,后者是自动生成的主键。请参阅此处
。
I am definitly not a guru ,but hopeful can provide some useful information.
a. sqlite command line tools
If you are running the sqlite3 command-line access program you can type ".tables" to get a list of all tables. Or you can type ".schema" to see the complete database schema including all tables and indices.
b. By code
see Here.
EDIT:
After reading your post on Adobe forum, I think your problem is here:
You should declare your
ttlid
ASINTEGER PRIMARY KEY
but NOTINT PRIMARY KEY
.By delcaring
ttlid
ASINTEGER PRIMARY KEY
, it will become an alias ofrowid
which is autogeneratedrimary key.See Here
.