<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)航:
     
    主站蜘蛛池模板: 精品亚洲成A人无码成A在线观看 | 嫩草视频在线免费观看| 67194成手机免费观看| 5g影院5g天天爽永久免费影院| 亚洲熟妇av一区二区三区| 亚洲精品国产精品乱码不99| 久久91亚洲人成电影网站| 亚洲va在线va天堂成人| h视频免费高清在线观看| 无码人妻一区二区三区免费n鬼沢| 在线成人a毛片免费播放 | 曰批全过程免费视频免费看 | 亚洲热妇无码AV在线播放| 久久成人18免费网站| 免费看污成人午夜网站| 精品亚洲成α人无码成α在线观看 | 亚洲福利一区二区三区| 亚洲AV永久无码天堂影院| 亚洲日产乱码一二三区别| a级毛片在线免费看| 在线免费一区二区| 亚洲a∨无码精品色午夜| 免费jlzzjlzz在线播放视频| 亚洲福利在线观看| 中文字幕在线免费视频| 免费AA片少妇人AA片直播| 在线观看亚洲AV日韩AV| 色欲国产麻豆一精品一AV一免费| 亚洲美女视频一区| 精品久久久久久国产免费了| 日本亚洲欧洲免费天堂午夜看片女人员| 污视频在线观看免费| 色天使亚洲综合在线观看| 免费观看黄色的网站| 亚洲免费精彩视频在线观看| 亚洲免费在线观看| 久久青青草原亚洲av无码app| 99久久免费国产精精品| 久久夜色精品国产噜噜噜亚洲AV| 在线天堂免费观看.WWW| 亚洲福利视频一区|