日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
關(guān)于Sqlite數(shù)據(jù)庫Update語句的一點介紹

Sqlite數(shù)據(jù)庫中的Update語句,你能了解多少呢?因為這種微型數(shù)據(jù)庫用到的語句非常少,所以可能我們不會經(jīng)常的用到。但要想真正的玩轉(zhuǎn)sqlite這種微型數(shù)據(jù)庫,掌握這些語句的用法是非常重要的。本文我們就來介紹一下update語句的使用。

1.典型的Update(支持)

 
 
 
  1. Update  
  2.  
  3. T1  
  4.  
  5. Set  
  6.  
  7. Column1=v1,  
  8.  
  9. Column2=V2 
  10.  
  11. Where  
  12.  
  13. key=V3; 

2.Update…From(很不幸,Sqlite是不支持的)

 
 
 
  1. UPDATE  
  2.  
  3. t1  
  4.  
  5. SET  
  6.  
  7. Column1=t2.Column1  
  8.  
  9. FROM  
  10.  
  11. t2,t1  
  12.  
  13. WHERE  
  14.  
  15. t2.key=t1.key; 

要進行表間更新Update…From是必須的,居然Sqlite不支持,有什么別的辦法嗎?還確實有,替代方法有兩種:

首先,Sqlite里面有一個新鮮玩意“INSERTORREPLACE”,跟Mysql類似,這個結(jié)構(gòu)能夠保證在存在的情況下替換,不存在的情況下更新,用這個機制就可以輕松實現(xiàn)Update…From了。

 
 
 
  1. INSERTORREPLACEINTO  
  2.  
  3. t1(key,Column1,Column2)  
  4.  
  5. SELECT  
  6.  
  7. t2.key,t2.Column1,t2.Column2  
  8.  
  9. FROM  
  10.  
  11. t2,t1  
  12.  
  13. WHERE  
  14.  
  15. t2.key=t1.key; 

備注:這種方法要避免插入操作,首先要確保是依照主鍵執(zhí)行的更新,如果where條件不是主鍵可能就有點麻煩了。

要是不是主鍵的更新怎么辦能?另外還有其他的辦法嗎?我們在這中情況下只能向典型的Update…where尋求幫助了,下面是一個例子:

 
 
 
  1. UPDATE  
  2.  
  3. t1  
  4.  
  5. SET  
  6.  
  7. Column1=(SELECTColumnxFROMt2WHEREt2.key=t1.key),  
  8.  
  9. Column2=(SELECTColumnyFROMt2WHEREt2.key=t1.key),  
  10.  
  11. WHEREt1.key=(SELECTkeyFROMt2WHEREt2.key=t1.key); 

下面舉一個主從表的例子,一個部門表,一個成員表,成員表中的部門名稱和代碼是冗余的信息,以部門表中的部門名稱和代碼更新成員表中的冗余信息:

 
 
 
  1. update  
  2.  
  3. userlogins  
  4.  
  5. set  
  6.  
  7. deptname=(selectdeptnamefromDepartMentswhereDepartMents.[DeptID]=userlogins.[DeptID]),  
  8.  
  9. deptcode=(selectdeptcodefromDepartMentswhereDepartMents.[DeptID]=userlogins.[DeptID])  
  10.  
  11. where  
  12.  
  13. userlogins.[DeptID]=(SELECT[DeptID]FROM DepartMentswhereDepartMents.[DeptID]=userlogins.[DeptID]); 

關(guān)于sqlite數(shù)據(jù)庫的update語句的知識就介紹到這里,希望能給大家?guī)韼椭伞?/p>

【編輯推薦】

  1. 簡述修復Domino數(shù)據(jù)庫視圖索引的兩種方法
  2. MSSQL數(shù)據(jù)庫跨表和跨數(shù)據(jù)庫查詢方法簡介
  3. Oracle跟蹤文件分析工具TKPROF使用簡介
  4. 在SQL SERVER 2005執(zhí)行存儲過程的權(quán)限分配問題
  5. SQL Server 2005數(shù)據(jù)庫分區(qū)數(shù)據(jù)的移入和移出操作

網(wǎng)站名稱:關(guān)于Sqlite數(shù)據(jù)庫Update語句的一點介紹
網(wǎng)頁網(wǎng)址:http://www.dlmjj.cn/article/djpdodg.html