程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> sqlserver中delete、update中應用表別號和oracle的差別

sqlserver中delete、update中應用表別號和oracle的差別

編輯:MSSQL

sqlserver中delete、update中應用表別號和oracle的差別。本站提示廣大學習愛好者:(sqlserver中delete、update中應用表別號和oracle的差別)文章只能為提供參考,不一定能成為您想要的結果。以下是sqlserver中delete、update中應用表別號和oracle的差別正文


昨天發明法式中數據剖析的成果纰謬,從新停止剖析後,原數據仍在,有值的字段被累計。心說,纰謬啊,是從新生成記載後才剖析的啊。豈非忘了DELETE了?查代碼,發明有刪除語句。因而在查詢剖析器中履行,報錯。重復試幾回,明確了,Delete From不認表名別號!回頭想下,現在法式改完後重要是在Oracle中測的,SQLServer一向沒細測。

之所以要用別號,是由於where前提中須要用到子查詢寫一些前提,上面不寫那末龐雜,僅解釋一下成績。

結論:

(ORACLE實用)    DELETE FROM TABLEA A WHERE A.FIELD1=10
(SQLSERVER實用) DELETE TABLEA FROM TABLEA A WHERE A.FIELD1=10
(Ora\SQL均實用) DELETE FROM TABLEA WHERE TABLEA.FIELD1=10

兩點經歷:

1、測試要周全;
2、要自負,寫法式時斟酌的情形挺全的。

update情形

update T_report a  
      set a.status='1'
   where a.report_Seq=1234

履行掉敗

update a
      set a.status='1'
    from T_report a
where a.report_Seq=1234

履行勝利

所以要做通用的法式,做好不應用別號

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved