無法在SQL 2005系統資料庫中執行的T-SQL語句(XML處理)
表現:
下面的程式碼, 在相容性級別90的所有使用者資料庫和tempdb庫中都能執行, 但無法在系統資料庫中執行, 執行會收到如下錯誤:
Msg 4121, Level 16, State 1, Line 2
Cannot find either column "dbo" or the user-defined function or aggregate "dbo.f_test", or the name is ambiguous.
看來系統資料庫中做東西有門檻了, 不過, 如果不在計算列中引用函式, 直接在查詢中引用函式是沒有問題的, 所以不知道是否應該算 BUG
CREATE FUNCTION dbo.
@value xml
)RETURNS int
AS
BEGIN
RETURN @value.value('(//*)[1]', 'int')
END
GO
CREATE TABLE #(
col1 xml,
col2 as dbo.f_test(col1)
)
GO
DROP TABLE #
DROP FUNCTION dbo.f_test
相關推薦
無法在SQL 2005系統資料庫中執行的T-SQL語句(XML處理)
表現:下面的程式碼, 在相容性級別90的所有使用者資料庫和tempdb庫中都能執行, 但無法在系統資料庫中執行, 執行會收到如下錯誤:Msg 4121, Level 16, State 1, Line 2Cannot find either column "dbo" or the user-defined
怎樣SQL存儲過程中執行動態SQL語句
緩存 參數 insert 每次 一點 證明 record scac 清空緩存 MSSQL為我們提供了兩種動態執行SQL語句的命令,分別是EXEC和sp_executesql;通常,sp_executesql則更具有優勢,它提供了輸入輸出接口,而EXEC沒有。還有一個最大的好
pl/sql developer 匯出資料庫中的表到可執行的.sql 指令碼檔案
PL/SQL自帶匯出資料庫中表到.sql指令碼檔案的工具。 1.在objects視窗中,選中表》右擊》Export Data 2.選》SQL Inserts 選擇:Create tables,其他選項看情況選擇。 3.Output file:選擇輸出路徑及檔名。 4
執行mybatis資料庫中存放的SQL
專案中看到的一段比較神奇的思路,將SQL語句存放在了資料庫中,通過外來鍵KEY_ID來獲取製作一個合同需要用到的所有SQL,並依次迴圈執行 貼在此處,過幾天深入瞭解一下。 /** * 根據傳入的策略名(通常是檔名,會被大寫處理),讀取待填充資料 *
存儲過程中執行動態Sql語句
查詢 需要 一點 定義 data 復制 ast 我們 臨時 在最近的項目中,有用到動態執行sql語句,SQL為我們提供了兩種動態執行SQL語句的命令,分別是EXEC和sp_executesql;通常,sp_executesql則更具有優勢,它提供了輸入輸出接口,而EXE
DB2 存儲過程中執行動態SQL
values exec 退出 .... strong arch 包含 gin 使用 樣本代碼: DROP PROCEDURE QUOTATION.COPY_SAMPLE; CREATE PROCEDURE QUOTATION.COPY_SAMPLE ( IN tab
將專案中執行的 SQL 列印到 laravel.log 檔案中
AppServiceProvider use DB; use Log; public function boot() { // 第一種方式(推薦) DB::listen(function ($query) { Log::info(
SQL Server 系統資料庫
1.master master資料庫記錄了SQL Server的所有的系統級資訊,包括登陸賬戶和系統配置設定。master資料庫還記錄了所有其它的資料庫是否存在,以及這些資料庫檔案的位置、SQL Server的初始化資訊,它始終有一個可用的最新master資料庫備份。 安裝成功後,系統會首先
SQL Server 執行T-SQL提示:將截斷字串或二進位制資料[SQLSTATE 22001] (錯誤 8152)
今天在執行以前寫的將增量同步到全量的作業過程中報如下錯誤: 訊息 已以使用者 NT SERVICE\SQLSERVERAGENT 的身份執行。 將截斷字串或二進位制資料。 [SQLSTATE 22001] (錯誤 8152) 語句已終止。 [SQLSTATE 01000] (錯誤 36
在xshell中執行hive sql 並將結果寫入另一個txt文字中
在xshell 中進入資料夾:vi test.sql然後將要執行的sql輸入,注意開頭不能有空格寫完後按Esc鍵,輸入:x儲存並退出輸入下面程式碼:/usr/bin/beeline -u "jdbc:hive2://dsrv1.heracles.sohuno.com:1000
查詢oracle資料庫正在執行的sql
SELECT b.sid oracleID, b.username Oracle使用者, b.serial#, &nbs
SQL Server 系統資料庫恢復
標籤:SQL SERVER/MSSQL SERVER/資料庫/DBA/故障恢復/master 概述 SQL Server 維護一組系統級資料庫(稱為“系統資料庫”),這些資料庫對於伺服器例項的執行至關重要。每次進行大量更新後,都必須備份多個系統資料庫。必須備份的系統資料庫包括 msdb、ma
比較SQL Server 2000 資料庫中兩個庫的差異
昨天被資料庫的不同步給弄鬱悶了,開發和測試的庫不是一個,開發的這個庫,儲存過程經常更新。有時候甚至表結構都有些變化。這就導致了很多問題。一時半會還不知道具體是什麼問題,搞得老子很狼狽,一時性起,想寫一個程式來比較兩個庫的不同,方便測試和實施。今天上午,邊開會邊寫,中午的時候通過測試.主要是兩個SQL語句:查詢
資料庫中常用的sql語句
SQL是目前使用最為廣泛的資料庫語言之一。這裡,我總結了在資料庫上,用SQL語言對資料排序、過濾和分組,以及表、檢視、聯結、子查詢、遊標、儲存過程和觸發器等內容。 1.檢索資料 SELECT prod
程式中執行hive sql出錯[FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask]
執行SQL時出了個錯: SQL: INSERT OVERWRITE DIRECTORY 'result/testConsole' select count(1) from nutable; 錯誤資訊: Failed with exception Unable to rename: hdfs://in
Eclipse 連線 SQL Server 2008資料庫,執行JAVA程式碼時出現:‘sa’使用者登入失敗
前幾天用Eclipse 連線 SQL Server 2008資料庫,執行JAVA程式碼時總是出現:‘sa’使用者登入失敗。 我的連線方法都是按照網上找的,一直在尋找錯誤的原因,網上說(1)sql server的密碼是否正確;(2).sql server是否設定的是混合登入;
SQL 2005修改資料庫表的建立時間
參考文章:http://www.w3school.com.cn/sql/sql_select_into.asp ---------------------------------------------------------------------------------
sqlserver在觸發器中執行動態sql用到inserted(deleted)表
這兩天公司產品中要加個資料同步用的觸發器,oracle版沒什麼問題,很順利的寫完了。 在寫sqlserver版時遇到了麻煩。由於在觸發器中要根據inserted(deleted)表的資料,對另一個表進行更新操作,而這個表的某些欄位是不固定的,所以需要寫成動態
sql server 統計資料庫中某個欄位的值,剔除重複資料和查詢重複的資料
1.有的時候,在資料庫中存在一些重複的資料,但是我們又想統計某個欄位的值,重複的要剔除掉,如圖所示: 在上面的圖我們可以看到,id=2,3 id=4,5的4條資料都重複了,我們統計amount只要其
使用Log4jdbc-log4j2監聽MyBatis中執行的SQL和Connection
引言: 在專案中使用了MyBatis,一個比較苦惱的問題是無法看到執行的SQL的具體情況,所以,就找到了Log4jdbc-log4j2。這個是一個基於jdbc層面的監聽工具,可以監聽對於資料庫的主要操作,從而完美的檢視到其中執行的操作。 1. Log4jdbc-log4j