Time of Update: 2018-12-07
一:觸發器是一種特殊的預存程序,它不能被顯式地調用,而是在往表中插入記錄﹑更新記錄或者刪除記錄時被自動地啟用。所以觸發器可以用來實現對錶實施複雜的完整性條件約束。 二:SQL Server為每個觸發器都建立了兩個專用表:Inserted表和Deleted表。這兩個表由系統來維護,它們存在於記憶體中而不是在資料庫中。這兩個表的結構總是與被該觸發器作用的表的結構相同。觸發器執行
Time of Update: 2018-12-07
分頁方案一:(利用Not In和SELECT TOP分頁) 例子:每頁顯示10條記錄,顯示第一頁記錄: Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-07
create table AllScore(id int identity(1,1) primary key,--主鍵stu_name varchar(20),--學生名category varchar(20),--學科record float,--成績)/*插入資料*/insert into AllScore(stu_name,category,record)values('劉德華','Chinese',100)insert into
Time of Update: 2018-12-07
今天主要探討下SQL Server預存程序的應用及最佳化方案。 預存程序:由於本人之前的一篇文章對預存程序簡單的做了概述,http://www.cnblogs.com/weilengdeyu/archive/2012/12/26/2834625.html這裡就不再贅述了。今天來看下預存程序的進階應用程式。首先來看下預存程序能夠包含哪些內容: 可以看出,預存程序不僅包含單個select語句,還可以包含select語句塊,例如Case When,同樣還可以包含邏輯控制語句,如if—
Time of Update: 2018-12-07
在這裡我們能看到一種使用sql預存程序寫的資料控制項分頁功能,不管給開發工具中的那個資料控制項,都只要調用這個預存程序就可以實現這樣的方法了,簡單吧,我們再也不用在各個頁面都寫很多的SQL語句了。Misrosoft SQL Server是微軟開發的一種管理資料的資料庫,現在世面上面最流行的幾款資料庫是Access,SQL Server, MySQl,Oracl資料庫,所謂這些資料庫,只要你學會一個資料庫的文法等,其他的你都就大致會使用了,現在就我學習的SQL Server我在這裡大致寫寫,
Time of Update: 2018-12-07
CString strSQLSrvName;// HKEY hKEY; LPCTSTR data_Set="SOFTWARE\\Microsoft\\MSSQLServer\\MSSQLServer\\CurrentVersion\\"; long ret0=(::RegOpenKeyEx(HKEY_LOCAL_MACHINE,data_Set, 0, KEY_READ, &hKEY)); if(ret0 == ERROR_SUCCESS) {
Time of Update: 2018-12-07
在查詢分析器裡使用如下代碼:sp_Attach_db @dbName = N'a00', @FileName1 = N'D:\vc\sqldb\a00_Data.MDF', @FileName2 = N'D:\vc\sqldb\a00_Log.LDF'把上面的2個檔案換成你的對應檔案就可以了,按執行--ok或者:在資料庫的名字上點右鍵--所有任務--備分資料庫--常規--備分到--(選擇存放位置、文本*.txt)--確定
Time of Update: 2018-12-07
SQL Server 中四種匹配符的含義 % 代表零個或者多個任一字元 _ 代表一個任一字元 [] 指定範圍內的任意單個字元 [^] 不在指定範圍內的任意單個字元 帶有匹配符的字串必須使用引號引起來,例如下面的樣本: LIKE 'BR%'返回以“BR”開始的任一字元串。 LIKE 'Br%'返回以“Br”開始的任一字元中。 LIKE '%een'返回以“een”結束的任一字元串。 LIKE
Time of Update: 2018-12-07
//stdafx.h#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF") //主程式初始化函數BOOL CADO2App::InitInstance(){ AfxEnableControlContainer(); AfxOleInit();//初始化COM庫//----------------------------------------
Time of Update: 2018-12-07
其實所有的死結最深層的原因就是一個:資源競爭 表現一: 一個使用者A 訪問表A(鎖住了表A),然後又訪問表B,另一個使用者B 訪問表B(鎖住了表B),然後企圖訪問表A,這時使用者A由於使用者B已經鎖住表B,它必須等待使用者B釋放表B,才能繼續,好了他老人家就只好老老實實在這等了,同樣使用者B要等使用者A釋放表A才能繼續這就死結了。 解決方案: 這種死結是由於你的程式的BUG產生的,除了調整你的程式的邏輯別無他法 仔細分析你程式的邏輯: 1:盡量避免同時鎖定兩個資源 2:
Time of Update: 2018-12-07
遠端連線SQL Server 2000伺服器的解決方案: 需求如下:需要遠端連線外地的SQL Server 2000伺服器。 測試條件:一個公網IP,兩個靜態IP。 具體步驟: 一、ping伺服器IP能否ping通 觀察遠程SQL Server 2000伺服器的物理串連是否存在。如果不行,請檢查網路,查看配置,當然得確保遠程sql server 2000伺服器的IP拼字正確。 二 在Dos或命令列下輸入telnet 伺服器IP 連接埠,看能否連通 如telnet 202.114.
Time of Update: 2018-12-07
==========================================--insert 觸發器 create trigger tri_inserton studentfor insert as declare @student_id char(10)select @student_id=s.student_id from student s inner join inserted ion s.student_id=i.student_idif @student_id='000000
Time of Update: 2018-12-07
昨天遇到一個很奇怪的檔案,sql server用的好好的,不知道怎麼突然出現這個錯誤了,以為是sql server少了什麼檔案,就重裝了一遍,結果錯誤依舊,又把所有的註冊表,臨時檔案都清除了一遍,又重新安裝了一遍,錯誤還是依舊。很是鬱悶。錯誤如下:---------------------------Microsoft Management Console---------------------------MMC 不能開啟檔案 C:\Program Files\Microsoft SQL
Time of Update: 2018-12-07
Time of Update: 2018-12-07
最近在開發項目的過程中遇到這麼一個問題,就是在插入一條記錄的後立即擷取其在資料庫中自增的ID,以便處理相關聯的資料,怎麼做?在sql server 2000中可以這樣做,有幾種方式。詳細請看下面的講解與對比。一、要擷取此ID,最簡單的方法就是:(以下舉一簡單實用的例子)--建立資料庫和表create database MyDataBaseuse MyDataBasecreate table mytable(id int identity(1,1),name
Time of Update: 2018-12-07
因為昨天我的SQL Server 2008資料庫在使用的時候突然就打不開了。而起前天還用它來寫T-SQL語句來著。所以很是鬱悶啊,到網上查詢以後,不能解決,就乾脆重新安裝了一邊,所以昨天整理的內容不能夠及時的更新到部落格上,只能今天繼續整理,然後更新了。這次主要是講ADO.NET訪問預存程序的知識,所以,在開篇的時候還是把SQL
Time of Update: 2018-12-07
使用ADO,NET來調用預存程序可以分為一下4種方式1)調用不帶參數的預存程序2)調用帶一個參數的預存程序3)調用帶多個參數的預存程序4)調用帶輸出參數的預存程序(本程式碼範例所使用的預存程序,使用的是作者的上一篇博文所建立的預存程序,博文地址:http://www.cnblogs.com/qq731109249/archive/2012/10/07/2714236.html,請大家參考)一,ADO.NET調用不帶參數的預存程序,使用的預存程序是上篇博文樣本1-1建立的預存程序具體的調用代碼1-
Time of Update: 2018-12-07
1.子查詢概念 (1)就是在查詢的where子句中的判斷依據是另一個查詢的結果,如此就構成了一個外部的查詢和一個內部的查詢,這個內部的查詢就是自查詢。 (2)自查詢的分類 1)獨立子查詢 ->獨立單值(標量)子查詢 (=) 1 Select 2 3 testID,stuID,testBase,testBeyond,testPro 4 5 from Score 6 7 where stuID=( 8 9 select
Time of Update: 2018-12-07
1. 表運算式 (1) 將表作為一個源或將查詢的一個結果集作為一個源,對源做處理,然後得到一個新的資料來源,對其進行查詢。 (2)表運算式放在from子句中 (3)派生表,將表的查詢得到的結果集作為一個新的資料來源,需要注意一下幾點: 1)派生表必須有括弧括起。 2)派生表需要取別名 3)派生表中的所有欄位也要有別名(必須要給欄位起名)。 4)能夠作為派生表的只有結果集(遊標不行)。 (4)寫一段SQL語句,大家可以體會一下,這裡就不提供資料庫了。 1
Time of Update: 2018-12-07
由於系統需求,最近在開發過程中將系統從原來的MySQL轉移到SQL 2000下,其中遇到了諸多問題,花費了我不少時間。現在把我的經驗拿出來告訴大家,好讓大家少走彎路,節約時間。 首先是SQL 2000資料庫的安裝問題,在此我主要講些關於SQL 2000的版本與作業系統的相容性問題:SQL 2000總共有7個不同版本,適應不同等級使用者的需求。 我試了一下,在XP系統下只有“個人開發版”能正常安裝而不出現錯誤,所以大家在安裝時要注意,具體安裝時的配置參照相關說明就可以了。