您的位置:首页 > 数据库

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

2016-11-27 23:13 387 查看
首先使用数据库管理员的账户登录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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: