Sqlite数据库的Update知多少?

 我来答
大情科嘞广扬5204
推荐于2016-03-10 · TA获得超过147个赞
知道答主
回答量:119
采纳率:100%
帮助的人:53.3万
展开全部
虽然号称对Sqlite的使用有一年多的经验,但实际上并没有对Sqlite的各种语法有深入的了解,毕竟大多数时候选择Sqlite这种微型数据库,表结构设计上都十分的简单,一些复杂的sql操作很少会用到。另一方面Sqlite居然理论上可以支持2TB的数据,相信随着各路神仙对Sqlite的推崇,日后还是会大有作为的。 今天着重想谈一谈Sqlite中的Update。1. 典型的Update(支持)UpdateT1SetColumn1 = v1, Column2 =V2Wherekey = V3; 2.Update…From(很不幸, Sqlite是不支持的)UPDATEt1SETColumn1= t2. Column1FROMt2, t1WHEREt2.key = t1.key; 要进行表间更新 Update…From ,Sqlite里面有一个新鲜玩意 INSERT OR REPLACE ,跟Mysql类似,这个结构能够保证在存在的情况下替换,不存在的情况下更新,用这个机制就可以轻松实现 Update…From了。 INSERT OR REPLACE INTO t1( key, Column1, Column2)SELECTt2.key, t2. Column1,t2. Column2FROMt2, t1WHEREt2.key = t1.key; 备注:这种方法要避免插入操作,首先要确保是依照主键执行的更新,如果where条件不是主键可能就有点麻烦了。 Update…where 寻求帮助了,下面是一个例子:UPDATEt1SETColumn1 = ( SELECT Columnx FROM t2 WHERE t2.key =t1.key ), Column2 = ( SELECT Columny FROM t2 WHERE t2.key =t1.key ), WHERE t1.key = ( SELECT key FROM t2 WHERE t2.key=t1.key);
糖糖寳寳
推荐于2016-09-23 · TA获得超过6.4万个赞
知道大有可为答主
回答量:1.8万
采纳率:92%
帮助的人:3987万
展开全部
典型的Update(支持)
UpdateT1SetColumn1 = v1,Column2 =V2Wherekey = V3;
Update…From(很不幸,Sqlite是不支持的)
UPDATEt1SETColumn1= t2. Column1FROMt2, t1WHEREt2.key = t1.key;
要进行表间更新
Update…From
,Sqlite里面有一个新鲜玩意
INSERT OR REPLACE,跟Mysql类似,这个结构能够保证在存在的情况下替换,不存在的情况下更新,用这个机制就可以轻松实现
Update…From了。
INSERT OR REPLACE INTO
t1( key, Column1, Column2)SELECTt2.key, t2. Column1,t2. Column2FROMt2, t1WHEREt2.key = t1.key;
备注:这种方法要避免插入操作,首先要确保是依照主键执行的更新,如果where条件不是主键可能就有点麻烦了。
Update…where
寻求帮助了,下面是一个例子:UPDATEt1SETColumn1 = ( SELECT Columnx FROM t2 WHERE t2.key =t1.key ),
Column2 = ( SELECT Columny FROM t2 WHERE t2.key =t1.key ),
WHERE t1.key = ( SELECT key FROM t2 WHERE t2.key=t1.key);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式