Time of Update: 2018-12-08
SQL Server遍曆表一般都要用到遊標,SQL Server中可以很容易的用遊標實現迴圈,實現SQL Server遍曆表中記錄。本文將介紹利用使用表變數和遊標實現資料庫中表的遍曆。 表變數來實現表的遍曆 以下代碼中,代碼塊之間的差異已經用灰色的背景標記。 複製代碼 代碼如下:DECLARE @temp TABLE ( [id] INT IDENTITY(1, 1) , [Name] VARCHAR(10) ) DECLARE @tempId INT , @tempName VARCHAR(1
Time of Update: 2018-12-08
除了硬碟和磁帶,現在您可以使用 SQL Server 的本機備份功能來備份您的 SQL Server Database到 Windows AzureBlob 儲存體服務。在此版本中,您可以使用 T-SQL 和SMO備份到Windows AzureBlob儲存。在SQL Server 戶內執行個體上的SQLServer Databases或在宿主環境中,如運行在 Windows Azure VMs上的 SQL Server 執行個體都可以利用此功能。好處:· 靈活、
Time of Update: 2018-12-08
對於資料庫來說多多少少要掌握一點,首先基本的SQL語句要瞭解。下面來總結一些入門層級的SQL語句。create相關•show database; 顯示出現有的資料庫•use database_x; 現在要使用資料庫database_x•create table coffee (id int(5) not null,coffee_name varchar(25)); 建立一張表,包含id和coffee_name兩個欄位•alter table coffee add taste varchar(10
Time of Update: 2018-12-08
介紹 我們一起來做個樣本,在.NET中建立一個類,並在這個類裡建立一個方法,然後在SQL Server中調用這個方法。按照微軟所述,通過宿主 Microsoft .NET Framework 2.0 公用語言運行庫 (CLR),SQL Server 2005顯著地增強了資料庫編程模型。 這使得開發人員可以用任何CLR語言(如C#、VB.NET或C++等)來寫預存程序、觸發器和使用者自訂函數。我們如何?這些功能呢? 為了使用CLR,我們需要做如下幾步:
Time of Update: 2018-12-08
在SQL Server裡可以調用DOS下的命令列工具bcp來實現把表裡的資料或者SQL語句結果產生文字檔。 BCP命令的參數格式: 複製代碼 代碼如下:BCP {dbtable | query} {in | out | queryout | format} datafile [-m maxerrors] [-f formatfile] [-e errfile] [-F firstrow] [-L lastrow] [-b batchsize] [-n
Time of Update: 2018-12-08
複製代碼 代碼如下:--建立 test 表 ,插入資料CREATE TABLE test(code varchar(50), [values] varchar(10),[count] int)INSERT test SELECT '001', 'aa',1UNION ALL SELECT '001', 'bb',2UNION ALL SELECT '002', 'aaa',4UNION ALL SELECT '002', 'bbb',5UNION ALL SELECT '002', 'ccc',
Time of Update: 2018-12-08
sql server中如何判斷表或者資料庫的存在,但在實際使用中,需判斷Status狀態位:其中某些狀態位可由使用者使用 sp_dboption(read only、dbo use only、single user 等)進行設定:1 = autoclose;使用 sp_dboption 設定。 資料庫完全關閉,其資源在最後一個使用者登出後釋放。4 = select into/bulkcopy;使用 sp_dboption 設定。允許使用 Select INTO 語句和快速大量複製。8 =
Time of Update: 2018-12-08
寫SQL語句的時候很多時候會用到filter篩選掉一些記錄,SQL對篩選條件簡稱:SARG(search argument/SARG) 複製代碼 代碼如下:where amount>4000 and amount<6000上面這句就是篩選條件
Time of Update: 2018-12-08
錯誤資訊:錯誤MSSQLSERVERSQLServerAgent could not be started (reason: SQLServerAgent 必須能夠以 SysAdmin 身份串連到 SQLServer,但“(未知)”不是 SysAdmin 角色的成員)。 運行環境:Windows2003R2 32bit + MSSQL2005+啟用SQL的AWE記憶體管理 出現原因:給SQL降權到Network Service許可權運行之後。 解決辦法:開啟組策略\電腦配置\Windows
Time of Update: 2018-12-08
Unicode字元集就是為瞭解決字元集這種不相容的問題而產生的,它所有的字元都用兩個位元組表示,即英文字元也是用兩個位元組表示 如果還為了這個糾結,就直接看看後面的解說,做決定吧。 一般如果用到中文或者其它特殊字元,我就會使用n開頭的類型,否則的話直接使用var開頭的。 sql server中的varchar和Nvarchar有什麼區別? 答: varchar(n) 長度為 n 個位元組的可變長度且非 Unicode 的字元資料。n 必須是一個介於 1 和 8,000
Time of Update: 2018-12-08
參考MSDN的文章 http://msdn.microsoft.com/zh-cn/library/a6t1z9x2.aspx中所指的SqlDataSourceEnumerator類別,是應用程式在當前的網路中尋找SQL Server執行個體。 Insus.NET在示範中,是把找到的執行個體顯示於DropDownList控制項中。首先在.aspx拉一個DropDownList控制項: 複製代碼 代碼如下:Server: <asp:DropDownList
Time of Update: 2018-12-08
1.建立一資料表,裡面有欄位id,將id設為為主鍵 複製代碼 代碼如下:create table tb(id int,constraint pkid primary key (id)) create table tb(id int primary key ) 2.建立一資料表,裡面有欄位id,將id設為主鍵且自動編號 複製代碼 代碼如下:create table tb(id int identity(1,1),constraint pkid primary key (id)) create
Time of Update: 2018-12-08
首先,我需要強調下,這篇主旨是揭示堆表的刪除記錄找回的原理,我所考慮的方面並不適用於每個人的每種情況,望大家見諒~
Time of Update: 2018-12-08
編譯的含義 -------------------------------------------------------------------------------- 當SQLSERVER收到任何一個指令,包括查詢(query)、批處理(batch)、預存程序、觸發器(trigger) 、先行編譯指令(prepared statement)和動態SQL語句(dynamic SQL Statement)要完成文法解釋、語句解釋,
Time of Update: 2018-12-08
對於語句的運行,除了執行計畫本身,還有一些其他因素要考慮,例如語句的編譯時間、執行時間、做了多少次磁碟讀等。如果DBA能夠把問題語句單獨測試回合,可以在運行前開啟下面這三個開關,收集語句啟動並執行統計資訊。 這些資訊對分析問題很有價值。 複製代碼 代碼如下:SET STATISTICS TIME ON SET STATISTICS IO ON SET STATISTICS PROFILE ON SET STATISTICS TIME ON ----------------------------
Time of Update: 2018-12-08
在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
Time of Update: 2018-12-08
如果使用DATENAME()函數是取得月份的英文全稱,但報表需要,只需顯示月份名稱縮寫即可。 十二個月份的英文縮寫,只有五月份是全稱與縮寫一樣,其它月份的縮寫僅是取前三位字母。因此Insus.NET寫成一個自訂函數: 複製代碼 代碼如下:-- ============================================= -- Author: Insus.NET -- Create date: 2012-12-18 -- Description: Get Month
Time of Update: 2018-12-08
誤區 #27:使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB錯誤 乍一看,由於BACKUP WITH CHECKSUM會檢測所有分配出去的頁的校正和的值,這個誤區貌似是這麼回事,但實際上並不是這麼回事,原因如下: 由SQL Server 2000或是更早版本升上來的資料庫page
Time of Update: 2018-12-08
誤區 #30:有關備份的30個誤區全是錯的在開始有關備份的誤區之前,如果你對備份的基礎沒有瞭解,請看之前我在TechNet Magazine的文章:Understanding SQL Server
Time of Update: 2018-12-08
誤區 #29:可以通過對堆建叢集索引再DROP後進行堆上的磁碟重組Nooooooooooooo!!! 對堆建叢集索引再DROP在我看來是除了收縮資料庫之外最2的事了。 如果你通過sys.dm_db_index_physical_stats(或是老版本的DBCC