收藏幾段SQL Server語句和預存程序-- ======================================================--列出SQL SERVER 所有表,欄位名,主鍵,類型,長度,小數位元等資訊--在查詢分析器裡運行即可,可以產生一個表,匯出到EXCEL中-- ======================================================SELECT (case when a.colorder=1 then
[轉帖] 部落格天地 www.inbaidu.comSQL Server裡一些未公開的擴充預存程序 擴充預存程序(xp)是直接運行在SQL Server地址空間裡的動態連結程式庫,是通過使用SQL Server開放資料服務API(SQL Server Open Data Services API)開發的。我們可以像執行普通預存程序一樣,在“查詢分析器”裡運行擴充預存程序。擴充預存程序被用於SQL Server的擴充功能,我們可以直接利用SQL Server附帶的眾多擴充預存程序,也可以用C或C+
最近在開發項目的過程中遇到一個問題,就是在插入一條記錄的後要立即擷取所在資料庫中ID,而該ID是自增的,怎麼做?在sql server 2005中有幾種方式可以實現。 要擷取此ID,最簡單的方法就是在查詢之後select @@indentity--SQL語句建立資料庫和表複製代碼 代碼如下:create database dbdemogouse dbdemogocreate table tbldemo( id int primary key identity(1,1), name
有些情況可能用下資料表值函式,資料表值函式主要用於資料計算出來返回結果集,可以帶參數(和視圖的一個大的區別),如果函數中沒有過多的邏輯處理,如變數的定義,判斷等,資料表值函式返回結果集可以簡單向下面這麼寫: 複製代碼 代碼如下:CREATE FUNCTION Fun_GetReportNews(@type varchar(10))RETURNS TABLEAS RETURN( SELECT TPR_ID,TPR_Title,TPR_Date FROM TP_ReportNews WHERE
複製代碼 代碼如下:.遊標方式 1 DECLARE @Data NVARCHAR(max) SET @Data='1,tanw;2,keenboy' --Id,Name DECLARE @dataItem NVARCHAR(100) DECLARE data_cursor CURSOR FOR (SELECT * FROM split(@Data,';')) OPEN data_cursor FETCH NEXT FROM data_cursor INTO @dataItem
先備份資料庫,再用下面的辦法: 複製代碼 代碼如下:USE MASTER GO SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE GO ALTER DATABASE Database_Name SET EMERGENCY GO sp_dboption 'Database_Name', 'single user', 'true' GO DBCC
1.子查詢概念 (1)就是在查詢的where子句中的判斷依據是另一個查詢的結果,如此就構成了一個外部的查詢和一個內部的查詢,這個內部的查詢就是自查詢。 (2)自查詢的分類 1)獨立子查詢 ->獨立單值(標量)子查詢(=) 複製代碼 代碼如下:Select testID,stuID,testBase,testBeyond,testPro from Score where stuID=( select stuID from Student where stuName='Kencery' ) -
錯誤資訊:錯誤MSSQLSERVERSQLServerAgent could not be started (reason: SQLServerAgent 必須能夠以 SysAdmin 身份串連到 SQLServer,但“(未知)”不是 SysAdmin 角色的成員)。 運行環境:Windows2003R2 32bit + MSSQL2005+啟用SQL的AWE記憶體管理 出現原因:給SQL降權到Network Service許可權運行之後。 解決辦法:開啟組策略\電腦配置\Windows
首先use [資料庫名稱];exec sp_helpfile;使用sp_helpfile查詢可知道log 檔案的邏輯名稱,然後就可以利用DBCC來減小LOG檔案BACKUP LOG [資料庫名] WITH TRUNCATE_ONLYdbcc shrinkfile ([log檔案的邏輯名稱],1)這個方法在MS SQL Server 2008 以及MS SQL Server 2008 R2中不再適用,會提示:TRUNCATE_ONLY is not a valid BACKUP
在SQL語句調優的時候,大部分都會查看語句執行時間,究竟SQLSERVER顯示出來的統計結果是什麼意思? 下面看一下例子 比較簡單的語句: 複製代碼 代碼如下:1 SET STATISTICS TIME ON 2 USE [pratice] 3 GO 4 SELECT * FROM [dbo].[Orders] 結果: 複製代碼 代碼如下:SQL Server 分析和編譯時間: CPU 時間 = 0 毫秒,佔用時間 = 0 毫秒。 SQL Server 執行時間: CPU 時間 = 0