如何在不转换的情况下在SQLite数据库中插入字符串?
表: 创建表配置(键字符串,值字符串,主键(键));
这是我尝试过的: 插入配置(Key,Value)值(42,cast('0042'作为文本));
这是转储: 插入“配置”值(42,42);
我想要什么: 插入“配置”值(42,'0042');
The table:
CREATE TABLE configuration(Key STRING, Value STRING, PRIMARY KEY (Key) );
Here is what I tried:
insert into configuration(Key,Value) values(42,cast('0042' as text));
Here is the dump:
INSERT INTO "configuration" VALUES(42,42);
What I wanted:
INSERT INTO "configuration" VALUES(42,'0042');
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您使用以下命令创建表:(
使用 SQLite 执行此操作不会造成存储损失),那么即使您使用最简单的 INSERT 形式,您也会保留前导零。这是因为
STRING
不是真正的 SQLite 类型,因此 <代码>NUMERIC亲和力。If you create the table with:
(there is no storage penalty for doing this with SQLite) then you'll get the leading zeroes preserved, even if you use the very simplest form of INSERT. This is because
STRING
is not a real SQLite type, and so hasNUMERIC
affinity.我不确定你在尝试什么,但本质上应该是:
I'm not sure what you are trying, but essentially, it should be: