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
履行勝利
所以要做通用的法式,做好不應用別號