<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查詢語句,但是不同的是一個(gè)是用inner jion,一個(gè)是用left jion,但是兩個(gè)查詢語句的執(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) 評論(1)  編輯  收藏

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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲av区一区二区三| 午夜毛片不卡高清免费| 国产精品亚洲综合专区片高清久久久| 亚洲日韩av无码中文| 妞干网免费视频在线观看| 亚洲一区二区三区高清不卡 | 性xxxx视频播放免费| 亚洲va成无码人在线观看| 最近最新MV在线观看免费高清| 狠狠色香婷婷久久亚洲精品| 久久WWW免费人成人片| 亚洲成a人无码亚洲成av无码| 日韩免费视频播播| 久青草国产免费观看| 国产亚洲精品美女久久久| 麻豆精品成人免费国产片| 久久亚洲精品中文字幕| 国产卡二卡三卡四卡免费网址| 亚洲av永久中文无码精品综合| 亚洲成年看片在线观看| a毛片免费观看完整| 亚洲欧洲日韩在线电影| 日本高清免费网站| 一级午夜免费视频| 亚洲欧洲日韩国产综合在线二区| 色se01短视频永久免费| 亚洲av无码片vr一区二区三区| 亚洲真人日本在线| 久久青草精品38国产免费| 亚洲日韩精品无码专区| 亚洲美女高清一区二区三区| 日本视频在线观看永久免费| 亚洲国产高清在线精品一区| 国产免费人成在线视频| 免费av片在线观看网站| 日韩亚洲国产高清免费视频| 在线观看亚洲天天一三视| 亚洲黄色免费网址| 深夜福利在线视频免费| 亚洲成a人片毛片在线| 亚洲福利视频一区二区|