Time of Update: 2018-12-07
進過半年多的努力,《ASP.NET 3.5+SQL
Time of Update: 2018-12-07
declare @dbname varchar(20)set @dbname='56fc'declare @sql nvarchar(500) declare @spid int--SPID 值是當使用者進行串連時指派給該串連的一個唯一的整數 set @sql= 'declare getspid cursor for select spid from sysprocesses where
Time of Update: 2018-12-07
對於分離一個資料庫來說,我們可以用Manage Studio介面或者預存程序。但是對於每一種方法都必須保證沒有使用者使用這個資料庫.接下來所講的都是對於用命令來分離或附加一個資料庫。對於用Manage Studio自己看著介面操作就可以應付了。分離資料庫 對於用預存程序來分離資料庫,如果發現無法終止使用者連結,可以使用ALTER
Time of Update: 2018-12-07
我們設計表時,在欄位是否允許Null值這個問題上,有時會爭論一番。資料庫牛人Kalen Delaney則給了一下建議 1,永遠不要在使用者表中允許NULL值 2,在使用者表定義中包含一個NOT NULL限制 3,不要依賴資料庫屬性來控制NULL值的行為 對於第一點,我們反向說,如果允許NULL,會給我們帶來什麼影響。 1,SQL
Time of Update: 2018-12-07
說到這個問題,基本上有人就會想到三個問題:1,什麼是系統資料?2,為什麼要移動系統資料庫?3,移動系統資料庫我們可以用附加和分離,為什麼還要單獨拿出來說呢?對於這三個問題我一個一個講吧,也算是自己做個筆記。1,什麼是系統資料?所謂系統資料庫就是我們在裝SQL Server之後,系統內建的資料庫(這樣的回答是不是很白癡^_^).如果你裝SQL Server2005或2008在開啟一個SQL執行個體後,就會看到一個資料庫--->系統資料庫檔案夾,裡邊就是系統內建的資料庫,
Time of Update: 2018-12-07
有時DBA需要檢查當前伺服器有多少串連請求,以及串連請求的登入名稱,用戶端版本,主機名稱,程式名等等之類的資訊,我們就可以對伺服器的串連狀況有所瞭解,防止不明使用者使用。 SQL Server本身提供了這麼一個DMV來返回這些資訊,它就是sys.dm_exec_sessions 。 比如在我的機器上做一下查詢: SELECT * FROM sys.dm_exec_sessions WHERE host_name IS NOT NULL
Time of Update: 2018-12-07
SQL Server日期計算 通常,你需要獲得當前日期和計算一些其他的日期,例如,你的程式可能需要判斷一個月的第一天或者最後一天。你們大部分人大概都知道怎樣把日期進行分割(年、月、日等),然後僅僅用分割出來的年、月、日等放在幾個函數中計算出自己所需要的日期!在這篇文章裡,我將告訴你如何使用DATEADD和DATEDIFF函數來計算出在你的程式中可能你要用到的一些不同日期。
Time of Update: 2018-12-07
SQL Server 2005(含)以上版本,新增了APPLY表運算,為我們日常查詢帶來了極大的方便。 新增的APPLY表運算子把右表運算式應用到左表運算式中的每一行。它不像JOIN那樣先計算那個表運算式都可以,APPLY必選先邏輯地計算左運算式。這種計算輸入的邏輯順序允許吧右運算式關聯到左表運算式。 APPLY有兩種形式,一個是OUTER APPLY,一個是CROSS
Time of Update: 2018-12-07
我們一般都認為TRUNCATE是一種不可復原的操作,它會刪除表中的所有資料以及重設Identity列。如果你在事務中進行TRUNCATE操作,就能復原。反之,它就不會從記錄檔檔案恢複資料。它不會在記錄檔中記錄刪除的那些資料,它只在日誌中記錄資料頁的單元分配。下面的例子就能解釋上面的所說的. USE temp_test_databaseGO--建立一個暫存資料表CREATE TABLE TruncateTabel(ID INT)INSERT INTO TruncateTabel(
Time of Update: 2018-12-07
1,什麼是視圖? 2,為什麼要用視圖; 3,視圖中的ORDER BY; 4,重新整理視圖; 5,更新視圖; 6,視圖選項; 7,索引檢視表; 細說Sql Server中的視圖(下) 應大家要求已在“細說Sql Server中的視圖(上)”中添加“為什麼要用視圖”一小節。 1.什麼是視圖
Time of Update: 2018-12-07
情境:有一張使用者表,一個訂單表,要求獲得一個使用者對應的最新的一條訂單資訊。 實現以上要求,我們可以用以下幾種方式,但是效率卻相差很遠。 首先我們在Order表中,建立一個索引: CREATE UNIQUE INDEX idx_eid_odD_oidD ON Orders(EmployeeID,OrderDate DESC,OrderID DESC) 多個OrderId是為了在OrderData相同的情況下,按訂單號倒序,是個輔助屬性。 方法1: SELECT
Time of Update: 2018-12-07
我們在日常操作中,免不了對資料庫的某張表,一次性的要插入多條記錄,但是首先想到的就是複製,粘帖N多重複的INSERT INTO 語句,萬一某一個少了一個分號,或多個逗號之類的,產生錯誤,要找起來可就費盡了,既浪費時間,又耽誤工作。 除了上面所說的方法外,其實還有二中方法,相比較起來要比之前那個要簡潔。 首先是之前那個方法: INSERT INTO MyTable(ID,NAME) VALUES(1,'123');INSERT INTO
Time of Update: 2018-12-07
1,什麼是視圖? 2,為什麼要用視圖; 3,視圖中的ORDER BY; 4,重新整理視圖; 5,更新視圖; 6,視圖選項; 7,索引檢視表; 細說Sql Server中的視圖(上) 應大家要求已在“細說Sql
Time of Update: 2018-12-07
有時候我們可能會把CSV中的資料匯入到某個資料庫的表中,比如做報表分析的時候。 對於這個問題,我想一點也難不倒程式人員吧!但是要是SQL Server能夠完成這個任務,豈不是更好! 對,SQL Server確實有這個功能。 首先先讓我們看一下CSV檔案,該檔案儲存在我的D:盤下,名為csv.txt,內容是: 現在就是SQL Server的關鍵區段了;我們使用的是SQL Server的BULK INSERT命令,關於該命令的詳細解釋,請點擊此處; 我們先在SQL
Time of Update: 2018-12-07
有時候我們需要知道儲存在表中某條記錄的所屬檔案號以及頁面編號,但是經過我們自己查詢,查詢出來是一個十六進位頁面號,那麼我們怎麼才能根據該十六進位頁面號計算出該記錄所對的“所屬檔案號”以及“頁面編號”呢? 以下的函數就能幫我們解決該問題:返回【x:xx】格式 Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-07
這隻是一個使用Management Studio的技巧 我們在SQL Server Management Studio中寫SQL 的時候,避免不了在瀏覽器和SSMS兩者之間頻繁切換,並浪費時間,殊不知,SSMS中內建有一個Web瀏覽器,和操作查詢標籤是一樣的,非常的方便。 在SSMS中點擊“視圖”》“其他視窗”》“Web瀏覽器”,就會開啟如所示: 這樣我們就可以在SSMS中開啟web瀏覽器進行查詢資訊了,是不是很方便。
Time of Update: 2018-12-07
前幾天看了一下賽迪網中的SQL板塊的文章,講了如何在SQL Server中快速重複資料刪除記錄。我瀏覽了一下,作者用了四種方法,有建暫存資料表的,用遊標的,用唯一索引的,真可謂窮盡其法。然後我BAIDU了一下,才發現原來我用的方法是最簡便的。好東西不敢獨享...測試表中的資料如下: ProductID ProductName Unit UnitPrice 1 North Bottole 9.0 2 Chang Bottole 20.0 2 Chang Bottole 20.0 3
Time of Update: 2018-12-07
昨天看到網上有一個關於SQL SERVER 課件,便隨手下載了下來看看主要講了些什麼內容,於是看到了下面兩個PPT頁面 由於第一張PPT上的內容不太準確(記錄檔中沒有“日誌頁”的概念,只有VLF的概念,可能是我們對“資料頁”的概念太深刻了,因此弄了以“日誌頁”的概念出來,而PPT中說先更新高速緩衝區中的資料頁,然後將交易記錄寫入到“日誌頁”,很容易讓人理解成先更改高速緩衝區,然後將日誌寫入到磁碟上的“日誌頁”),再加上我看PPT時比較"囫圇"(只看到前一張PPT,
Time of Update: 2018-12-07
char(或是nchar)與varchar(或是nvarchar)是資料庫中最常見的用於儲存字元資料的資料類型,由於它們大多數特性相同,因此在選擇使用哪種類型字元資料時,可能會有一些疑惑。不過,通過一些比較和測試,還是可以較為容易地根據實際的需要來選擇它們。 1. char與varchar的比較 下面是使用char與varcahr的一些結果。 (1)資料存放區開銷。 a. 每個varchar列需要額外的兩個位元組,用於反映儲存的資料的長度。
Time of Update: 2018-12-07
char(或是nchar)與varchar(或是nvarchar)是資料庫中最常見的用於儲存字元資料的資料類型,由於它們大多數特性相同,因此在選擇使用哪種類型字元資料時, 可能會有一些疑惑。不過,通過一些比較和測試,還是可以較為容易地根據實際的需要來選擇它們。 1. char與varchar的比較 下面是使用char與varcahr的一些結果。 (1)資料存放區開銷。 a. 每個varchar列需要額外的兩個位元組,用於反映儲存的資料的長度。