09-新闻发布系统数据库-管理角色数据操作

简介: 09-新闻发布系统数据库-管理角色数据操作

09-新闻发布系统数据库-管理角色数据操作

项目描述

随着互联网的进一步发展,网络媒体在人们心中的地位进一步提高,“新闻发布系统”作为网络媒体的核心系统,其重要性是越来越突出:一方面,它提供一个新闻管理和发布的功能;另一方面,现在的新闻发布要求实现与普通的用户交互,用户可以很方便地参加一些调查和相关新闻的评论,本项目主要是对新闻发布系统中的新闻信息表进行操作。

新闻发布系统数据库操作要求如下:

1)数据库NewsDB。

2)角色表Roles,表结构如下表J2-9-1所示。

表J2-9-1 Roles表

字段名 字段说明 数据类型 允许为空 备注
RoleId 角色ID int 主键,标识列(1,1)
RoleName 角色名称 字符(30)

3)Roles表基础数据如表J2-9-2所示记录。

表J2-9-2 Roles表基础数据

RoleId RoleName
1 普通角色
2 经理
3 管理员

4)新闻类别表NewsKind,结构如表J2-9-3所示。

表J2-9-3 NewsKind表

字段名 字段说明 数据类型 允许为空 备注
NewsKindId 类别ID int 主键,标识列(1,1)
NewsKindName 类别名称 字符(30)

5)NewsKind表基础数据如表J2-9-4所示记录。

表J2-9-4 NewsKind表基础数据

NewsKindId NewsKindName
1 今日报道
2 每周快讯
3 国内新闻
4 国际新闻
5 图片新闻

6)角色_新闻类别管理表RolePower,结构如表J2-9-5所示。

表J2-9-5 RolePower表

字段名 字段说明 数据类型 允许为空 备注
RoleId 角色ID int 主键,外键(参照Roles表)
NewsKindId 类别ID int 主键,外键(参照NewsKind表)

(1)任务描述

任务1:用SQL语言创建网上投票数据库
1)创建数据库NewsDB,判断系统中是否有该名字的数据库,如果有则删除;如果没有则创建该数据库。
2)主数据库文件初始值10MB,最大为30MB,按3MB进行递增。
3)日志文件初始值为5MB,最大为20MB,按1MB进行递增。

IF DB_ID('NewsDB') IS NOT NULL DROP DATABASE NewsDB
GO
CREATE DATABASE NewsDB
ON PRIMARY
(
    NAME=NewsDB,
    FILENAME='D:\XXXX\NewsDB.mdf',    
    SIZE=10MB,
    MAXSIZE=30MB,
    FILEGROWTH=3MB
)
LOG ON 
( 
    NAME = NewsDB_log, 
    FILENAME = 'D:\XXXX\NewsDB_log.ldf', 
    SIZE = 5MB , 
    MAXSIZE=20MB,
    FILEGROWTH=1MB 
)
GO

任务2:用SQL语言创建角色表Roles、新闻类别表NewsKind、角色_新闻类别管理表RolePower
1)按照提供的表结构创建数据库表,并设主键、外键。

CREATE TABLE Roles(
    RoleId int not null IDENTITY(1,1) PRIMARY KEY,
    RoleName NVARCHAR(30) not null,
)



CREATE TABLE NewsKind(

    NewsKindId int not null IDENTITY(1,1) PRIMARY KEY,
    NewsKindName NVARCHAR(30) not null,
)


CREATE TABLE RolePower(
    RoleId int not null ,
    NewsKindId int not null,
    foreign key (RoleId) references Roles(RoleId),
    foreign key (NewsKindId) references NewsKind(NewsKindId),
)

任务3:用SQL语言对新闻信息表News进行操作
1) 管理员可以添加任何类型新闻、经理则可以添加除今日报道外的所有类型新闻、普通用户则只可以添加今日报道,根据上述请将表 RolePower表中数据添加完善。
2) 添加表中数据到角色表Roles中,添加表中数据到新闻类别表NewsKind 。
3)在表RolePower中删除普通用户的权限记录。

insert into Roles values('普通角色'),('经理'),('管理员')
insert into NewsKind values('今日报道'),('每周快讯'),('国内新闻'),('国际新闻'),('图片新闻')

insert into RolePower values( (select RoleId from Roles where RoleName = '普通角色'),(select NewsKindId from NewsKind where NewsKindName = '今日报道') )

insert into RolePower values( (select RoleId from Roles where RoleName = '经理'),(select NewsKindId from NewsKind where NewsKindName = '每周快讯') )
insert into RolePower values( (select RoleId from Roles where RoleName = '经理'),(select NewsKindId from NewsKind where NewsKindName = '国内新闻') )
insert into RolePower values( (select RoleId from Roles where RoleName = '经理'),(select NewsKindId from NewsKind where NewsKindName = '国际新闻') )
insert into RolePower values( (select RoleId from Roles where RoleName = '经理'),(select NewsKindId from NewsKind where NewsKindName = '图片新闻') )


insert into RolePower values( (select RoleId from Roles where RoleName = '管理员'),(select NewsKindId from NewsKind where NewsKindName = '今日报道') )
insert into RolePower values( (select RoleId from Roles where RoleName = '管理员'),(select NewsKindId from NewsKind where NewsKindName = '每周快讯') )
insert into RolePower values( (select RoleId from Roles where RoleName = '管理员'),(select NewsKindId from NewsKind where NewsKindName = '国内新闻') )
insert into RolePower values( (select RoleId from Roles where RoleName = '管理员'),(select NewsKindId from NewsKind where NewsKindName = '国际新闻') )
insert into RolePower values( (select RoleId from Roles where RoleName = '管理员'),(select NewsKindId from NewsKind where NewsKindName = '图片新闻') )


delete from RolePower where RoleId =(select RoleId from Roles where RoleName = '普通角色')
相关文章
|
30天前
|
存储 Oracle 关系型数据库
Dataphin常见问题之想要周期执行任务如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。
|
1月前
|
存储 人工智能 算法
一文了解向量数据库在RAG中扮演的角色
向量数据库在处理高维数据和实现精准信息检索方面发挥关键作用,成为AI时代数据基础设施的核心部分。
|
1月前
|
SQL 开发框架 JavaScript
在 Vue 中进行数据持久化时,有哪些常用的数据库框架?
在 Vue 中进行数据持久化时,有哪些常用的数据库框架?
49 3
|
1月前
|
存储 数据管理 数据处理
数据之光:探索数据库技术的演进之路
数据之光:探索数据库技术的演进之路
60 1
|
1月前
|
存储 运维 关系型数据库
数据的力量:构筑现代大型网站之数据库基础与应用
数据的力量:构筑现代大型网站之数据库基础与应用
49 0
|
1月前
|
SQL Java 数据库连接
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
17 0
|
30天前
|
SQL 安全 数据管理
在阿里云数据管理DMS(Data Management Service)中,您可以按照以下步骤来创建和管理数据库
【2月更文挑战第33天】在阿里云数据管理DMS(Data Management Service)中,您可以按照以下步骤来创建和管理数据库
34 7
|
6天前
|
存储 关系型数据库 MySQL
如何处理爬取到的数据,例如存储到数据库或文件中?
处理爬取的数据,可存储为txt、csv(适合表格数据)或json(适合结构化数据)文件。若需存储大量数据并执行复杂查询,可选择关系型(如MySQL)或非关系型(如MongoDB)数据库。以MySQL为例,需安装数据库和Python的pymysql库,创建数据库和表,然后编写Python代码进行数据操作。选择存储方式应考虑数据类型、数量及后续处理需求。
14 1
|
7天前
|
SQL 关系型数据库 MySQL
关系型数据库插入数据的语句
使用SQL的`INSERT INTO`语句向关系型数据库的`students`表插入数据。例如,插入一个`id`为1,`name`为'张三',`age`为20的记录:`INSERT INTO students (id, name, age) VALUES (1, '张三', 20)。如果`id`自增,则可简化为`INSERT INTO students (name, age) VALUES ('张三', 20)`。
6 2
|
7天前
|
SQL 存储 Oracle
关系型数据库查询数据的语句
本文介绍了关系型数据库中的基本SQL查询语句,包括选择所有或特定列、带条件查询、排序、分组、过滤分组、表连接、限制记录数及子查询。SQL还支持窗口函数、存储过程等高级功能,是高效管理数据库的关键。建议深入学习SQL及相应数据库系统文档。
9 2

热门文章

最新文章