createtableuser(id intprimarykeyauto_increment, name varchar(20));createtable role(id intprimarykeyauto_increment, name varchar(20));createtable module(id intprimarykeyauto_increment, name varchar(20));
insertintouservalues(null,'刘德华'),(null,'杨幂'),(null,'张学友');insertinto role values(null,'男游客'),(null,'男管理员'),(null,'女游客');insertinto module values(null,'男浏览'),(null,'男发帖'),(null,'男评论'),(null,'男删帖'),(null,'女浏览');insertinto u_r values(1,1),(1,3),(2,3),(3,2);insertinto r_m values(1,1),(2,1),(2,2),(2,3),(2,4),(3,5);
练习
-- 刘德华拥有哪些角色SELECT r.`name`FROMUSER u JOIN u_r ur ON u.`id`=ur.`uid`JOIN role r ON ur.`rid`=r.`id`WHEREu.`name`='刘德华';-- 查询女游客对应的用户都有谁 SELECT u.name FROMUSER u JOIN u_r ur ON u.`id`=ur.`uid`JOIN role r ON r.`id`=ur.`rid`WHERE r.`name`='女游客';-- 查询男管理员对应哪些权限SELECT m.name
FROM role r JOIN r_m rm ON rm.`rid`=r.`id`JOIN module m ON rm.`mid`=m.`id`WHERE r.`name`='男管理员';-- 查询刘德华拥有哪些权限SELECT m.name
FROMUSER u JOIN u_r ur ON u.`id`=ur.`uid`JOIN r_m rm ON rm.`rid`=ur.`rid`JOIN module m ON m.`id`=rm.`mid`WHERE u.name='刘德华';-- 查询有女浏览权限的用户都有谁SELECT u.name
FROMUSER u JOIN u_r ur ON u.`id`=ur.`uid`JOIN r_m rm ON rm.`rid`=ur.`rid`JOIN module m ON m.`id`=rm.`mid`WHERE m.`name`='女浏览';
PSO
import matplotlib.pyplot as plt
import numpy as np
import random as rd
np.set_printoptions(precision3,suppressTrue)class PSO():"""用于求解最小值"""def __init__(self,pop_scale,dim,maxV,pop_bnd,maxiter):self.pop_scale pop_…