<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 101,  comments - 29,  trackbacks - 0

    首先我們先創(chuàng)建兩個(gè)表:


    CREATE TABLE [dbo].[Roles](
    [Name] [nvarchar](50NOT NULL,
    [CreatedAt] [datetime] NOT NULL,
    [UpdatedAt] [datetime] NOT NULL,
    [Deleted] [bit] NOT NULL,
    [RoleStatus] [int] NOT NULL,
    [ID] [uniqueidentifier] NOT NULL,
    [SystemID] [uniqueidentifier] NOT NULL,
    [RoleKind] [int] NOT NULL,
     
    CONSTRAINT [PK_Roles] PRIMARY KEY CLUSTERED 
    (
    [ID] ASC
    )
    WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ONON [PRIMARY]
    ON [PRIMARY]


    GO


    EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'1=默認(rèn)管理員角色,2=普通角色' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Roles'@level2type=N'COLUMN',@level2name=N'RoleKind'
    GO


    ALTER TABLE [dbo].[Roles] ADD  CONSTRAINT [DF_Roles_Deleted]  DEFAULT ((0)) FOR [Deleted]
    GO


    ALTER TABLE [dbo].[Roles] ADD  CONSTRAINT [DF_Roles_RoleStatus]  DEFAULT ((1)) FOR [RoleStatus]
    GO


    ALTER TABLE [dbo].[Roles] ADD  CONSTRAINT [DF_Roles_RoleKind]  DEFAULT ((2)) FOR [RoleKind]
    GO

    CREATE TABLE [dbo].[RoleFunctions](
    [MappingID] [int] IDENTITY(1,1NOT NULL,
    [Status] [int] NOT NULL,
    [RoleID] [uniqueidentifier] NOT NULL,
    [FunctionID] [uniqueidentifier] NOT NULL,
     
    CONSTRAINT [PK_RoleFunctions] PRIMARY KEY CLUSTERED 
    (
    [MappingID] ASC
    )
    WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ONON [PRIMARY]
    ON [PRIMARY]


    GO


    ALTER TABLE [dbo].[RoleFunctions] ADD  CONSTRAINT [DF_RoleFunctions_Status]  DEFAULT ((0)) FOR [Status]
    GO

    以下是兩個(gè)條SQL查詢語(yǔ)句,但是不同的是一個(gè)是用inner jion,一個(gè)是用left jion,但是兩個(gè)查詢語(yǔ)句的執(zhí)行計(jì)劃差距非常大

    /****** Script for SelectTopNRows command from SSMS  ******/
    SELECT [MappingID]
          ,
    [Status]
          ,
    [RoleID]
          ,
    [FunctionID]
      
    FROM [RoleFunctions]
      
    left join roles on roles.id = rolefunctions.functionid


    SELECT [MappingID]
          ,
    [Status]
          ,
    [RoleID]
          ,
    [FunctionID]
      
    FROM [RoleFunctions]
      
    inner join roles on roles.id = rolefunctions.functionid


    期望高手給予講解……

    posted on 2012-05-19 14:55 mixer-a 閱讀(1989) 評(píng)論(1)  編輯  收藏

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲免费观看视频| 成人伊人亚洲人综合网站222| 亚洲成a人片在线观看无码| 日本免费精品一区二区三区| 毛片a级毛片免费观看免下载| 自怕偷自怕亚洲精品| 国产免费AV片在线观看| 亚洲色精品vr一区二区三区| 一区二区三区免费高清视频| 日韩精品成人亚洲专区| 婷婷亚洲综合五月天小说在线| 永久中文字幕免费视频网站| 亚洲最大无码中文字幕| 欧洲精品成人免费视频在线观看| 亚洲国产精品美女| 国产乱子精品免费视观看片| 亚洲黄色片在线观看| 在线成人爽a毛片免费软件| 中文字幕亚洲色图| 222www在线观看免费| 亚洲国产成人久久77| 1024免费福利永久观看网站| 亚洲国产精品日韩在线观看| 无码人妻精品中文字幕免费东京热| 亚洲熟妇色自偷自拍另类| 精品免费人成视频app| 亚洲免费闲人蜜桃| 国产福利在线免费| 色天使亚洲综合在线观看| 女人张开腿给人桶免费视频| 亚洲国产欧美一区二区三区| 在线观看免费精品国产| 色屁屁在线观看视频免费| 亚洲精品视频在线观看你懂的| CAOPORM国产精品视频免费| 亚洲精品国产美女久久久| 免费视频一区二区| 亚洲黄色在线观看网站| 我们的2018在线观看免费高清| 亚洲中文字幕无码爆乳app| 国产男女猛烈无遮挡免费网站|