【深圳大学数据库系统】实验3 DBMS Application

一、实验目的:

1、了解DBMS系统的功能、Web based数据库的软件组成及工具;

2、掌握数据库软件的使用方法、

3、掌握前台页面,后台数据库的基于WEB的数据库操作方法。

二、实验要求:

1、安装相关软件并浏览软件自带的帮助文件和功能菜单,

2、掌握PHP构建网页以及连接数据库的方法。

3、掌握phpmyadmin创建数据库与数据表的方法;

4、了解mysql的命令以及与php衔接的语句

5、了解网页构造的原理

三、实验设备:

计算机、数据库管理系统如DB2,mysql 等软件。

四、实验内容

1.首先创建一个名为"TEST"的数据库保存新闻相关信息。先建"news"表,字段数为"4",进入表的字段参数设置页面,第一个字段名为"id",类型选"bigint",长度值填20,属性不用填,NULL就选"NOT_NULL",意思是在添加数据时这个字段为必填,如果没填则会出错;默认部分留空行,额外就选"auto_increment",意思是该字段为自增长型,在添加一项数据时不用填这个字段它都会自动填入一数字.接着在旁边的主键那里选择上,让这个id字段作为主键,一般数据表都会创建"id"字段做主键以方便以后的操作。

建立如图所示的news表,包含四个字段。

2.新建connect.php文件,进行连接连接MYSQL数据库。

3.运行conn.php文件,没有出现报错,可知成功连接上了mysql数据库test。

4.新建“add_news.php”,用来添加新闻。

5. 新建save_news.php 保存刚刚输入的新闻。

6.运行add_news.php”,输入新闻标题和内容后点击按钮提交,网页提示插入成功,看数据库表内容发现确实添加了。

7.为方便展示后面的查询功能,插入如下数据。

8. 普通单条数据查询 read.php,查询id为5。

9. 查找多条数据 read_2.php,查找所有的数据。

10. 列出所有的新闻—— news.php。

11.新闻编辑界面—— edit_news.php。

12.列出所有可删除的新闻—— news2.php。

13. 删除选中的新闻—— del_news.php

14.保存编辑后的新闻—— save_edit_news.php。

思考题:建立以下相关数据的数据库,并用一个页面显示所有的表名,即要求用户点击该表名显示出该表所有记录。并完成插入记录,删除记录以及修改记录的功能。(所有的思考题均要求网页代码和运行后的界面,注意界面设计及美观性)

create table employees
(
	eid varchar(3) not null,
	ename varchar(15),
	city varchar(15),
	primary key(eid)
);
      
create table customers
(
	cid varchar(4) not null,
	cname varchar(15),
	city varchar(15),
	visits_made int(5),
	last_visit_time datetime,
	primary key(cid)
);

create table suppliers
(
	sid varchar(2) not null,
	sname varchar(15) not null,
	city varchar(15),
	telephone_no char(10),
	primary key(sid),	
	unique(sname)
);

create table products
(
	pid varchar(4) not null,
	pname varchar(15) not null,
	qoh int(5) not null,
	qoh_threshold int(5),
	original_price decimal(6,2),
	discnt_rate decimal(3,2),
	sid varchar(2),
	primary key(pid),	
	foreign key (sid) references suppliers (sid)
);

create table purchases
(
	purid int not null,
	cid varchar(4) not null,
	eid varchar(3) not null,
	pid varchar(4) not null,
	qty int(5),
	ptime datetime,
	total_price decimal(7,2),
	primary key (purid),
	foreign key (cid) references customers(cid),
	foreign key (eid) references employees(eid),
	foreign key (pid) references products(pid)
);

create table logs
(
	logid int(5) not null auto_increment,
	who varchar(10) not null,
	time datetime not null,
	table_name varchar(20) not null,
	operation varchar(6) not null,
	key_value varchar(4),
	primary key (logid)
);

insert into employees values ('e00', 'Amy', 'Vestal');
insert into employees values ('e01', 'Bob', 'Binghamton');
insert into employees values ('e02', 'John', 'Binghamton');
insert into employees values ('e03', 'Lisa', 'Binghamton');
insert into employees values ('e04', 'Matt', 'Vestal');

insert into suppliers values ('s0', 'Supplier 1', 'Binghamton', '6075555431');
insert into suppliers values ('s1', 'Supplier 2', 'NYC', '6075555432');

insert into products values ('pr00', 'Milk', 12, 10, 2.40, 0.1, 's0');
insert into products values ('pr01', 'Egg', 20, 10, 1.50, 0.2, 's1');
insert into products values ('pr02', 'Bread', 15, 10, 1.20, 0.1, 's0');
insert into products values ('pr03', 'Pineapple', 6, 5, 2.00, 0.3, 's0');
insert into products values ('pr04', 'Knife', 10, 8, 2.50, 0.2, 's1');
insert into products values ('pr05', 'Shovel', 5, 5, 7.99, 0.1, 's0');

insert into customers values ('c000', 'Kathy', 'Vestal', 2, '2017-11-28 10:25:32'); 
insert into customers values ('c001', 'Brown', 'Binghamton', 1, '2017-12-05 09:12:30'); 
insert into customers values ('c002', 'Anne', 'Vestal', 1, '2018-11-29 14:30:00'); 
insert into customers values ('c003', 'Jack', 'Vestal', 1, '2018-12-04 16:48:02'); 
insert into customers values ('c004', 'Mike', 'Binghamton', 1, '2018-11-30 11:52:16'); 
    
insert into purchases values (1, 'c000', 'e00', 'pr00', 1, '2018-10-22 12:34:22', 2.16);
insert into purchases values (2, 'c001', 'e03', 'pr03', 2, '2018-12-05 09:12:30', 2.80);
insert into purchases values (3, 'c002', 'e03', 'pr00', 1, '2018-11-29 14:30:00', 2.16);
insert into purchases values (4, 'c000', 'e01', 'pr01', 5, '2018-11-28 10:25:32', 6.00);
insert into purchases values (5, 'c004', 'e04', 'pr02', 3, '2018-11-30 11:52:16', 3.24);
insert into purchases values (6, 'c003', 'e02', 'pr05', 1, '2018-12-04 16:48:02', 7.19);

1.新建test2数据库,然后建表,如下图所示。

2.新建conn2.php用于连接数据库。

3.新建table.php,可以查看所有的表。

4.新建show_table.php,可以对单个表进行数据的查看。

5.新建insert.php,可以插入新的数据于表中。

6.新建delete.php,可以删除表格中的数据。

五.问题分析(碰到什么问题,如何解决)

1.运行conn.php检验是否成功连接数据库时报错,如下图所示。

分析报错原因后发现关键字user,再去观察代码,发现username没有填入root。

更改后再次运行,发现没有报错了,成功连接。

2.插入新闻到数据表时失败。

仔细分析php代码后发现php代码没有问题,然后去观察数据库,发现是数据表new的add_time字段写成了add__time。

更改后再次插入就成功了。

六.实验心得

通过此次实验,加深了对php和数据库系统的理解,学会了构建网页和数据库的联系,并实现了通过网页上的交互对后端数据库的更改。

(by 归忆)

深圳大学数据库系统是该校计算机科学与技术专业的一门重要课程,该课程内容涵盖数据库系统的基本原理、设计、实现和应用等方面知识,旨在培养学生对数据库技术的深入理解和实际操作能力。学生在学习过程中将接触到数据库系统的相关理论知识,如数据模型、关系代数、SQL语言等,并进行实际的数据库设计与实现,以及应用开发等实验性作业。 通过该课程的学习,学生将掌握数据库系统的基本概念和工作原理,具备使用和管理数据库系统的能力,同时也能够独立进行数据库应用开发和设计。这门课程还会引导学生了解当前数据库系统的最新发展动向,如大数据、云数据库等,为他们未来的就业和研究打下坚实的基础。 深圳大学数据库系统的CSDN,即学校数据库系统课程设计与实验平台,为学生提供了一个实践操作的虚拟环境,学生可以在上面进行数据库实验、课程设计和实践作业。CSDN系统不仅拥有丰富的数据库系统实例和案例,还提供了一系列在线的视频教学和实验指导,学生可以通过这个平台进行灵活的学习和实践,真正掌握数据库系统的实际应用技能。 通过深圳大学数据库系统的学习和CSDN平台的实践操作,学生将能够全面掌握数据库系统的理论知识和实际操作技能,为以后的学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

归忆_AC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值