隨筆 - 45, 文章 - 2, 評論 - 11, 引用 - 0
          數(shù)據(jù)加載中……

          sqlserver 基礎(chǔ)

            1 --創(chuàng)建表
            2     if exists(select * from sysobjects where name='user' and type='U'drop table [user] ;
            3     create table [user](
            4     id int identity(1,1) , --自增字段
            5     name varchar(50) ,
            6     pwd varchar(50) ,
            7     constraint pk_user_id primary key(id) --主鍵
            8     --constraint pk_user_id primary key(id,[name])
            9     );
           10 
           11 -- 變量的聲明,sql里面聲明變量時必須在變量前加@符號
           12     DECLARE @I INT
           13 
           14 -- 變量的賦值,變量賦值時變量前必須加set
           15     SET @I = 30
           16 
           17 -- 聲明多個變量
           18     DECLARE @s varchar(10),@a INT
           19 
           20 -- Sql 里if語句
           21     IF 條件 BEGIN
           22         執(zhí)行語句
           23     END
           24     ELSE BEGIN
           25         執(zhí)行語句
           26     END
           27             
           28     DECLARE @d INT
           29     set @d = 1
           30 
           31     IF @d = 1 BEGIN
           32 
           33     -- 打印
           34         PRINT '正確'
           35     END
           36     ELSE BEGIN
           37         PRINT '錯誤'
           38     END
           39 
           40 
           41 -- Sql 里的多條件選擇語句.
           42     DECLARE @iRet INT@PKDisp VARCHAR(20)
           43     SET @iRet = 1
           44     Select @iRet =
           45     CASE
           46         WHEN @PKDisp = '' THEN 1
           47         WHEN @PKDisp = '' THEN 2
           48         WHEN @PKDisp = '' THEN 3
           49         WHEN @PKDisp = '' THEN 4
           50         WHEN @PKDisp = '' THEN 5
           51         ELSE 100
           52     END
           53 
           54 -- 循環(huán)語句
           55     WHILE 條件 BEGIN    
           56         執(zhí)行語句
           57     END
           58 
           59     DECLARE @i INT
           60     SET @i = 1
           61     WHILE @i<1000000 BEGIN
           62         set @i=@i+1
           63     END
           64     -- 打印
           65     PRINT @i
           66 
           67 
           68 -- TRUNCATE 刪除表中的所有行,而不記錄單個行刪除操作,不能帶條件
           69 
           70     /*
           71     TRUNCATE TABLE 在功能上與不帶 Where 子句的 Delete 語句相同:二者均刪除表中的全部行
           72 
           73 。但 TRUNCATE TABLE 比 Delete 速度快,且使用的系統(tǒng)和事務(wù)日志資源少。
           74     Delete 語句每次刪除一行,并在事務(wù)日志中為所刪除的每行記錄一項。TRUNCATE TABLE 通過
           75 
           76 釋放存儲表數(shù)據(jù)所用的數(shù)據(jù)頁來刪除數(shù)據(jù),并且只在事務(wù)日志中記錄頁的釋放。
           77     TRUNCATE TABLE 刪除表中的所有行,但表結(jié)構(gòu)及其列、約束、索引等保持不變。新行標(biāo)識所用
           78 
           79 的計數(shù)值重置為該列的種子。如果想保留標(biāo)識計數(shù)值,請改用 Delete。如果要刪除表定義及其數(shù)據(jù),請
           80 
           81 使用 Drop TABLE 語句。
           82     對于由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應(yīng)使用不帶 Where 子句的
           83 
           84 Delete 語句。由于 TRUNCATE TABLE 不記錄在日志中,所以它不能激活觸發(fā)器。
           85     TRUNCATE TABLE 不能用于參與了索引視圖的表。
           86     示例
           87         下例刪除 authors 表中的所有數(shù)據(jù)。*/
           88         
           89         TRUNCATE TABLE authors
           90                 
           91 
           92 -- Select INTO 從一個查詢的計算結(jié)果中創(chuàng)建一個新表。 數(shù)據(jù)并不返回給客戶端,這一點和普通的
           93 -- Select 不同。 新表的字段具有和 Select 的輸出字段相關(guān)聯(lián)(相同)的名字和數(shù)據(jù)類型。
           94         
           95         select * into NewTable
           96             from Uname
           97 
           98 
           99 -- Insert INTO Select
          100         -- 表ABC必須存在
          101         -- 把表Uname里面的字段Username復(fù)制到表ABC
          102         Insert INTO ABC Select Username FROM Uname
          103 
          104 -- 創(chuàng)建臨時表
          105         Create TABLE #temp(
          106             UID int identity(11PRIMARY KEY,
          107             UserName varchar(16),
          108             Pwd varchar(50),
          109             Age smallint,
          110             Sex varchar(6)
          111         )
          112         -- 打開臨時表
          113         Select * from #temp
          114 
          115 -- 存儲過程
          116         -- 要創(chuàng)建存儲過程的數(shù)據(jù)庫
          117         Use Test
          118         -- 判斷要創(chuàng)建的存儲過程名是否存在
          119             if Exists(Select name From sysobjects Where name='csp_AddInfo' And
          120 
          121 type='P')
          122             -- 刪除存儲過程
          123             Drop Procedure dbo.csp_AddInfo
          124         Go
          125                 
          126                 
          127         -- 創(chuàng)建存儲過程
          128         Create Proc dbo.csp_AddInfo
          129         -- 存儲過程參數(shù)
          130         @UserName varchar(16),
          131         @Pwd varchar(50),
          132         @Age smallint,
          133         @Sex varchar(6)
          134         AS
          135         -- 存儲過程語句體
          136         insert into Uname (UserName,Pwd,Age,Sex)
          137             values (@UserName,@Pwd,@Age,@Sex)
          138         RETURN
          139         -- 執(zhí)行
          140         GO
          141                 
          142         -- 執(zhí)行存儲過程
          143         EXEC csp_AddInfo 'Junn.A','123456',20,'';
          144 修改自:http://blog.csdn.net/mx1029/archive/2007/07/06/1680910.aspx

          posted on 2011-03-25 16:31 jack zhai 閱讀(212) 評論(0)  編輯  收藏 所屬分類: 數(shù)據(jù)庫 、Sql Server


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 阳春市| 乐亭县| 武宣县| 五家渠市| 洞口县| 吴忠市| 新密市| 湟源县| 弥渡县| 镇远县| 庆安县| 沂源县| 文昌市| 琼海市| 蕲春县| 镇远县| 刚察县| 霍州市| 泉州市| 巧家县| 隆安县| 滁州市| 黔东| 临夏市| 香格里拉县| 开江县| 南澳县| 井陉县| 宁南县| 晋城| 古交市| 汝城县| 固镇县| 日喀则市| 瑞金市| 平塘县| 华亭县| 长垣县| 左云县| 盘锦市| 武陟县|