基于jsp的bbs论坛-(2)数据库创建

首先使用数据库管理员的账户登录plsqldev,并选择SYSDBA进行登录,在登录情况下打开命令窗口进行操作进行创建一个用户
登录plsqldev后,在里面新建一个命令窗口,使用SQL语句进行数据库的创建

一、创建用户

首先创建一个普通用户作为我们登录Oracle数据库的账号密码,不能都用数据库管理员的权限进行登录,权限过大防止误操作可能带来的巨大损失
使用如下SQL语句:
create user 账户名 identified by 密码;
以及使用如下SQL语句进一步修改上方所创建用户的权限:
grant connect,resource to 账户名;

二、创建account_table账户表

用上方创建的用户名和密码重新进行登录,根据对BBS论坛相关的需求分析,将在数据库中共建三张表:
1. account_table
2. message_table
3. revert_table

account_table
作为存储论坛所有账号信息的表,共建立如下5个字段:
1. account_account
- 用户数字账号
- 主键
- 由数据库队列直接给予,保证不重复
- 数字类型
2. account_name
- 用户账号个性名字
- 字符类型
3. account_pass
- 用户账号密码
- 字符类型
4. account_limit
- 用户账号权限识别码,0为用户,1为管理员
- 数字类型
5. account_date
- 用户账号创建日期
- date类型

SQL实现代码:

create table account_table(
account_account number(30,0) primary key not null,
account_name varchar2(30) unique not null,    
account_pass varchar2(30) not null,         
account_limit number(1,0) default 0,       
account_date date default sysdate      
);

三、创建message_table主题帖表

message_table
作为存储论坛所有主题帖信息的表,共建如下5个字段:
1. message_account
- 主题帖发帖人数字账号
- 对应account_table表的外键
- 数字类型
2. message_id
- 主题帖的id
- 主键
- 由数据库队列直接给予,保证不重复
- 数字类型
3. message_title
- 主题帖名称
- 字符类型
4. message_content
- 主题的内容
- 字符类型
5. message_data
- 主题帖的发帖日期
- 由系统直接给予
- date类型

SQL实现代码:

create table message_table(
message_account number(30,0) not null,
message_id number(30,0) primary key not null,
message_title varchar2(30) not null,
message_content varchar2(300) not null,
message_data date default sysdate,
constraint fk_message_account_account foreign key(message_account) references account_table(account_account)
);

四、创建revert_table回复贴表

revert_table
作为存储论坛所有回复帖信息的表,共建如下5个字段:
1. revert_account
- 回复贴的发帖人数字账号
- 设立对应account表的外键
- 数字类型
2. revert_messageid
- 所回复的主题帖的id
- 设立对应message表的外键
- 数字类型
3. revert_id
- 回复贴的id主键
- 由数据库队列直接给予,保证不重复
- 数字类型
4. revert_content
- 回复贴的内容
- 字符类型
5. revert_data
- 回复贴的发帖日期
- 由系统直接给予
- date类型

SQL实现代码:

create table revert_table(
revert_account number(30,0) not null,
revert_messageid number(30,0) not null,
revert_id number(30,0) primary key not null,
revert_content varchar2(300) not null,
revert_data date default sysdate,
constraint fk_revert_account_account  foreign key(revert_account) references account_table(account_account),
constraint fk_revert_message_id foreign key(revert_messageid)  references message_table(message_id)
);

五、创建数据库序列

以创建数据库自动增长队列的方式创建不重复的数字id,一个表创建一个序列,共需建立3个序列,如下所示:

5.1、创建序列accountnum序列SQL代码:

CREATE SEQUENCE accountnum
INCREMENT BY 1 
START WITH 1 
NOMAXVALUE 
NOCYCLE 
CACHE 10;

5.2、创建序列messagenum序列SQL代码:

CREATE SEQUENCE messagenum
INCREMENT BY 1 
START WITH 1 
NOMAXVALUE 
NOCYCLE 
CACHE 10;

5.3、创建序列revertnum序列SQL代码:

CREATE SEQUENCE revertnum
INCREMENT BY 1 
START WITH 1 
NOMAXVALUE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值