摘要:SQL 快速新增權限資料表(使用cross join)
1.因為設計系統的時候 將角色 權限 系統都做了分開處理
偏偏交集起來相當多資料
2.決定不自己打 使用cross join
先練習一下一般的語法
--use 資料庫
--select a.瀏覽,a.修改,a.刪除,b.系統名稱,c.角色名稱
--from 角色權限 as a
--cross join 系統 as b
--cross join 角色 as c
--go
像這樣
3.開始改寫 使用cross join
--先清空表單 已經打上去的資料
use 資料庫
delete 角色權限
--開始新增
use 資料庫
DECLARE @defult bit
SET @defult= 0
insert 角色權限
select b.系統ID ,c.角色ID, @defult,@defult,@defult,@defult,@defult,@defult,@defult,@defult
from 系統 as b
cross join 角色 as c
go
很好....252行資料完成!!太愉快了~~
4.再補一個...一次指定某一個角色的權限
DECLARE @defult bit
SET @defult= 1
update 角色權限
set
瀏覽=@defult,
新增=@defult,
修改=@defult,
刪除=@defult,
查詢=@defult,
報表=@defult,
轉單=@defult
where 角色ID=1