Time of Update: 2018-12-06
1:ReturnValue只能返回0,1,-1這樣的資料,局限性很大 ,而在預存程序中用OutPut參數,可以返回各種類型的資料,比較靈活方便。ReturnValue 是用來返回錯誤碼的,output是指預存程序傳出參數 .樣本如下:create proc [dbo].[pr_TestOutPut]@intNumber1 int,@intNumber2 int,@intSum int output,@msg nvarchar(20) outputasbegin set
Time of Update: 2018-12-06
目前我們採用的翻頁處理通常都是採用DataGrid預設的分頁,這種方式雖然只用綁定當前頁的資料,但是他從資料庫返回的資料集仍然是整個資料集,這樣,如果查詢返回的是一個大資料量的資料集,那麼在翻頁過程將會很耗時,因為他浪費了網路頻寬與伺服器資源(綁定一頁,但仍要返回整個資料集).因此,針對此種情況所做的最佳化的原則就是:不採用DataGrid的預設分頁,採用自訂分頁,要顯示哪頁的資料,就返回那一頁的資料.可以用如下兩種方式來處理該資料分頁問題,a.SQl語句;b.預存程序測試環境:一張包含兩個欄位
Time of Update: 2018-12-06
在做項目開發的時候,對資料庫的事務大家應該不會陌生,但是如何使用好事務呢?以下有幾個注意點和大家一起分享下:1.對要做的業務處理,事務操作的時間要儘可能的短。保持事務開啟會讓資源在很長的一段時間內處於鎖定狀態,這樣會阻塞其他使用者進行操作或讀取資料。2.最小化由事務鎖定資源。例如,只更新與妖做的事務相關的表。如果資料修改在邏輯上相互依賴,則他們應該屬於同一個事務,否則,不相關的更新應該在它們自己的事務中。3.只向事務添加相關的T-SQL操作。不要向某個事務添加與它關係不大的額外的尋找或更新。在事
Time of Update: 2018-12-06
今天在開發時,遇到要統計SQL Server 2005中資料庫表的個數的問題。於是自己寫下SQL:select count(1) from sysobjects where
Time of Update: 2018-12-06
1.按姓氏筆劃排序:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as 2.資料庫加密:select encrypt('原始密碼')select pwdencrypt('原始密碼')select pwdcompare('原始密碼','加密後密碼') = 1--相同;否則不相同 encrypt('原始密碼')select pwdencrypt('原始密碼')select
Time of Update: 2018-12-06
要點:1.GO是用來分割批處理的語句.而局部變數的範圍僅限於一個批處理內,在GO之後就不能使用之前定義的變數2.建立資料庫 CREATE DATABASE studentManager 和 產生主要資料檔案,記錄檔之間 不要加GO語句,加了的話,會報錯,產生不了 主次資料檔案,和記錄檔 3.一個資料庫中,只可以有一個 主要資料檔案(副檔名: .mdf),多個次資料檔案(副檔名: .ndf),多個記錄檔(副檔名: .Ldf) studentManager.mdf USE
Time of Update: 2018-12-06
文章目錄 2.2.1 並發一致性問題2.2.2 並發一致性問題的解決辦法2.2.3 交易隔離等級 2.2 SQL Server 2000+ADO.NET實現並發控制2.2.1 並發一致性問題常見並發並發一致性問題包括:丟失的修改、不可重複讀取、讀髒資料、幻影讀(幻影讀在一些資料中往往與不可重複讀取歸為一類)。2.2.1.1 丟失修改下面我們先來看一個例子,說明並行作業帶來的資料的不一致性問題。 考慮飛機訂票系統中的一個活動序列: 甲售票點(
Time of Update: 2018-12-06
from:http://lwlzyjl.cnblogs.com/方法一:CREATE TABLE #tabTmp(id int) INSERT #tabTmp EXECUTE('SELECT id FROM '+@TableName) declare curOne cursor for SELECT id FROM #tabTmp open curOne FETCH NEXT from
Time of Update: 2018-12-06
CREATE PROCEDURE [dbo].[sp_get_tree_relation](@table_name nvarchar(50), @id nvarchar(50), @name nvarchar(50), @parent_id nvarchar(50), @startId nvarchar(20))AS declare @v_id int declare @v_level int declare @sql nvarchar(500)begin create
Time of Update: 2018-12-06
有如下兩條語句:select @@VERSIONGOSELECTSERVERPROPERTY('ProductVersion') AS ProductVersion,SERVERPROPERTY('ProductLevel') AS ProductLevel,SERVERPROPERTY('Edition') AS Edition,SERVERPROPERTY('EngineEdition') AS EngineEdition;GO運行第一條會返回如下資訊:Microsoft SQL
Time of Update: 2018-12-06
今天遇到一個問題,sql server無法登陸,到Services裡看,服務沒有起來。但是在啟動Service時遇到問題說無法啟動。去Administrative Tools->Event Viewer中查看了一下,發現如下錯誤(該錯誤在SQL Server日誌中也可以查看到,目錄在C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log):Server TCP provider failed to
Time of Update: 2018-12-06
剛剛安裝的資料庫系統,按照預設安裝的話,很可能在進行遠端連線時報錯,通常是錯誤:"在串連到 SQL Server 2005 時,在預設的設定下 SQL Server 不允許進行遠端連線可能會導致此失敗。 剛剛安裝的資料庫系統,按照預設安裝的話,很可能在進行遠端連線時報錯,通常是錯誤:"在串連到 SQL Server 2005 時,在預設的設定下 SQL Server 不允許進行遠端連線可能會導致此失敗。 (provider: 具名管道提供者, error: 40 - 無法開啟到 SQL
Time of Update: 2018-12-06
給客戶發布個項目,基於sql server資料庫的,布署的時候嫌安裝sql server安裝麻煩,而且還不是正版,開始想裝個MSDE得了,後來考慮到只支援到2000,所以還是決定裝個sql server2005 express得了。到微軟下載回來,50多M,不大,一會就下來了,然後在虛擬機器上安裝,發現附加資料庫是個問題,於是建了一個udl文檔,在本機上測試,順利附加,可是在虛擬機器上死活不行,報找不到檔案,沒辦法,不能冒這個險,萬一在客戶那也不行就不好了,於是只有找命令列的方法,還是挺簡單的,
Time of Update: 2018-12-06
見 http://www.cnblogs.com/jiang_zheng/archive/2009/02/05/1384622.html1========在cmd 視窗下C:\Documents and Settings\Administrator>osql -E1> sp_password null,'abc123','sa'2> goPassword changed.1> exit大功告成,sa的密碼修改成了abc123關鍵是osql這個東東,具體查看 http://
Time of Update: 2018-12-06
直接看例子吧,假設一張users表,裡面只有id和Pwd兩個欄位。1,最簡單的用法:select * from users for xml auto得到結果如下:<users id="walker" pwd="walker" /><users id="walker" pwd="1C3A0B25C3D1C909E2BCB9FE44C2F904" /><users id="walker2" pwd="1C3A0B25C3D1C909E2BCB9FE44C2F904" /
Time of Update: 2018-12-06
一直都是使用企業管理器操作sql的,昨天幫一朋友部署網站,租的國外vps主機,登陸上去只看到sql的表徵圖正常啟動並執行,企業管理器和查詢分析器的影都沒看到,汗一個。。。空間供應商也不給支援人員,暈了,只有自己想辦法了。今天網上google一下,終於搞定。在cmd 視窗下C:\Documents and Settings\Administrator>osql -E1> sp_password null,'abc123','sa'2> goPassword
Time of Update: 2018-12-06
1.xml.exist 輸入為XQuery運算式,返回0,1或是Null。0表示不存在,1表示存在,Null表示輸入為空白 2.xml.value 輸入為XQuery運算式,返回一個SQL Server標量值 3.xml.query 輸入為XQuery運算式,返回一個SQL Server XML類型流 4.xml.nodes 輸入為XQuery運算式,返回一個XML格式文檔的一列行集 5.xml.modify 使用XQuery運算式對XML的節點進行insert ,
Time of Update: 2018-12-06
-->Title: 淺議SQL Server執行計畫-->Author: wufeng4552-->Date :2009-10-20
Time of Update: 2018-12-06
假如你安裝的是完整版SQL Server,那麼使用Asp.Net的網站組態工具的時候會出現如下錯誤:未能建立資料庫連接。 如果尚未建立 SQL Server 資料庫,請退出網站管理工具,使用 aspnet_regsql 命令列工具 + 生產力建立和設定資料庫,然後返回到此工具以設定提供者。一般情況下,.net會預設讓程式在當前網站的app_data目錄裡面找資料庫,然後用sql server
Time of Update: 2018-12-06
引言 我們先不講遊標的什麼概念,步驟及文法,先來看一個例子: 表一 OriginSalary 表二 AddSalary 現在有2張表,一張是OriginSalary表--工資表,有三個欄位0_ID 員工號(NVARCHAR)、O_Name員工姓名(NVARCHAR)、O_Salary工資(FLOAT)。另一張表AddSalary表—加薪表。有2個欄位,O_