
数据库课程设计报告
计网0831数据库课程设计
1、数据的导入和导出今天是数据库实习的第一天,对于我们来说数据库虽然是今年刚刚学过的课程,但是我们已经考试完一段时间了,所以也很久没有翻书本了,很多知识在刚刚做的时候还是很陌生的,不得不翻一下书本,下面就是在第一天实习中所产生的问题报告和分析结果。
在做实训前,老师先给我们讲了数据库如何导入EXCL表,在老师的指导下我们学会了,为创建表提供了方便。
首先我们是建立了一个新的KCSJ数据库,建立的数据语句如下:
用SQL语句在D:\KCSJ下创建课程设计数据库(KCSJ)
(一)CREATE DATABASE KCSJ
ON
(NAME=KCSJ_DATA,
FILENAME='D:\KCSJ_DATAMDF')
LOG ON
(NAME=KCSJ_LOG,
FILENAME='D:\KCSJ_LOGLDF')
将KCSJXLS文件中的数据导入KCSJ数据库中。导入后在数据库中将生成以下五个基本表:
成绩(学号,课程号,成绩)
课程(课程号,课程名,教师名)
三角形(a,b,c,s)
回文数(A1,A2)
其中:a> 学生、成绩、课程、三角形、回文数是表的名字。
b> 学号、姓名、性别、班级、籍贯、课程名和教师名为字符型,长度分别为10 、10、2、6、8、20、10;
c> 入学成绩为整型。
d> 年龄、课程号和成绩为整型或微整型。
e> A1为整型;A2为字符型,长度为2。
f> a、b、c为float类型,代表三角形的三边,s为float类型,代表三角形的面积。
在导入数据库中KCSJXLS文件的数据导入的时候是在所有任务--导入数据—数据源为excel97-2000- 文件位置—导入表中的数据—修改类型和长度 最后确定。
用企业管理器创建数据库(JW0831),将KCSJ数据库中的五个表导入该数据库中。
打开所有任务 导入数据源 选择KSCJ 数据库 下一步 再选择jw0831数据库 选择所有 确定 就可以将KCSJ数据库中的五个表导入该数据库中。
简单的结构化查询
--(1)查询学生的详细记录
selectfrom 学生
--(2)查询学生表中前两个班级(班级名称不能重复)
select top 2 班级 from 学生
group by 班级
在做本题的时候,由于想的比较复杂,外加题意有点模糊,所以转了很大一个圈,并在老师的侧外指导下通过group by分组才把本题做了出来。
--(3)显示把 成绩表中各科学生的成绩加 20 分后的信息
selectfrom 成绩
where 成绩='成绩'+20
在做本题的时候,由于题意理解错误,所以我先用updata语句来进行更新,但是在做到其它题的时候,听到老师在指导其它同学的时候,把题意一说,我才恍然大悟,自己的方向又错了。然后又重新思考,接着就做出了上面的答案。
--(4)查询来自“宁波” 学生的学号、姓名、籍贯
select 学号,姓名,籍贯 from 学生
where 籍贯='宁波'
--(5)查询选修4号课程且考试成绩在70分以上的学生的学号以及所选修的课程号和成绩,显示前3条结果记录
select top 3from 成绩
where 成绩>=70 and 课程号='4'
--(6)查询入学成绩在 300-400 分之内的学生的详细情况,并按入学成绩降序排序 ( 用两种方法完成 )
select from 学生
where 300<入学成绩 and 入学成绩<400 order by 入学成绩 desc
select from 学生
where 入学成绩 between 300 and 400 order by 入学成绩 desc
--(7)统计学生表中的学生人数
select count()from 学生
对于今天的题目做的多了,忽然发现很多题的类型都差不多,都是运用基本的书本知识,然后融会贯通,举一反三,然后不费吹灰之力就做出来了,我说的不费吹灰之力是简单的,但是有些还是费了好大一番功夫的。
--(8)查询学生表中姓李,姓名列包含两个字的学生的基本情况
select from 学生
where 姓名 like '李_'
--(9)查询名字中第 2 个字为‘北'的学生的基本信息
select from 学生
where 姓名 like '_北%
在做这几道题的时候,我解决了并也明白了—和%得区别和用途
--(10)查询选修 4 号课程,成绩在 80-90 分之间的学生学号和成绩
selectfrom 成绩
where 80<=成绩 and 成绩<90 and 课程号='4'
--(11)查询 JW0831 班和 JW0551 班学生的姓名、性别及班级(用谓词查询 in )
select 姓名,性别,班级 from 学生 where 班级 in('JW0831','JW0551')
group by 姓名,性别,班级
对于本道题拿到的时候,还是愣了一下的,因为我忽然不知道什么是,对于用谓词查询 in,自己不会用,在翻书翻了一遍并且询问了同学才发现如何去用它。
--(12)查询缺少成绩的学生的学号和相应的课程号
select 学号,课程号 from 成绩
where 成绩 is NULL
--(13)统计选修了4号课程学生人数
SELECT COUNT()AS'人数' FROM 成绩 where 课程号='4'
--(14)查询JW0831班家在河北学生的学号、姓名、性别
select 学号,姓名,性别 from 学生
where 籍贯='河北'and 班级='JW0831'
--(15)检索刘志生老师所授课程的课程号和课程名。
select 课程号,课程名 from 课程
where 教师名='刘志生'
---(16)检索年龄大于23岁的男学生的学号和姓名。
select 学号,姓名 from 学生
where 性别='男' and 年龄>23
--(17)查询学生表中姓李的学生的基本情况
select from 学生
where 姓名 like '李%'
--(18) 统计学生表中所有学生“入学成绩”的平均分、最高分、最低分
select AVG(入学成绩) as'平均成绩',max(入学成绩) as'最高分',min(入学成绩) as'最低分'from 学生
--(19)查询选修了1号或者3号课程,成绩及格的学生的学号和成绩
select 学号,成绩 from 成绩
where 成绩>=60 and 课程号 in (1,3)
--(20)统计学生表中所有男女生人数
SELECT 性别, COUNT(性别)AS'人数' FROM 学生
group by 性别
对于今天的题除了自己不太熟悉课本知识和同学讨论出来的那些分析外,对于其他的题已经没有什么问题了,因为我把今天的题做完之后,把报告写完的同时,对于明天的题我也进行了一番思考,并且还帮助其他同学解决了一些不会的问题。
星期二 天气 冷 心情 good
3、复杂的结构化查询
--(1)检索至少选修刘志生老师所授课程中一门课程的女学生姓名。
select 学生学号,姓名,性别,课程课程号 from 学生,成绩,课程
where 性别='女' and 课程课程号 in(select 课程号 from 课程 where 教师名='刘志生')and 学生学号=成绩学号
and 课程课程号=成绩课程号
对于今天的课程设计不是像昨天一样那么简单了,简直是提高了一个很大的层次,简直是一步三晃啊!不容易啊!就像本题一样,在查询的时候要用一个子查询和三个条件才能把它做出来!
--(2)检索吴计算同学不学的课程的课程号。
select 课程号 from 课程 where 课程号 not in(select 成绩课程号 from 成绩,学生where 姓名='吴计算' and 成绩学号=学生学号)
在本题中,用的方法还真是一波三折啊!因为如果要查不学的课程,要先查出他学的课程,然后再排掉学过的!充分运用了not in这个语法
--(3)检索至少选修四门课程的学生学号。
select 学号, count(成绩学号)as '门数' from 成绩,课程 where 成绩课程号=课程课程号
group by 成绩学号
having count(成绩学号)>=4
对于本题的用的是count做统计这个数据语句,外加可以用在group by 语句后的having条件语句。通过本题的联系,可以很好的运用count 和having语句
--(4)检索全部学生都选修的课程的课程号与课程名。
select 课程课程名 ,课程课程号 from 成绩,课程
where 成绩课程号=课程课程号
group by 课程课程名,课程课程号
having count(成绩学号) in (select count(学生学号)from 学生)
--(5)检索选修课程包含刘志生老师所授课的学生学号。
select 学号 from 成绩,课程
where 教师名='刘志生'and 成绩课程号=课程课程号
--(6)统计有学生选修的课程门数。
select 学号, count(成绩学号)as '门数' from 成绩,课程 where 成绩课程号=课程课程号
group by 成绩学号
--(7)求选修4号课程的学生的平均年龄。
select AVG(年龄)as'平均年龄',成绩课程号 from 学生,成绩
where 课程号='4' and 学生学号=成绩学号
group by 成绩课程号
--(8)求刘志生老师所授课程的每门课程的学生平均成绩。
select avg(成绩成绩)as'平均成绩',课程课程号 from 成绩,课程
where 教师名='刘志生' and 成绩课程号=课程课程号
group by 课程课程号
--(9)统计每门课程的学生选修人数(超过6人的课程才统计)。要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列。
select 成绩课程号, count(成绩学号)as '人数' from 成绩,课程
where 成绩课程号=课程课程号
group by 成绩课程号
having count(成绩学号)>=6
order by count(成绩学号) asc
--(10)检索学号比陆力利同学大,而年龄比他小的学生姓名。
select 学号,姓名 from 学生
where 学号>(select 学号 from 学生 where 姓名='陆力利') and 年龄<(select 年龄 from 学生 where 姓名='陆力利'
--(11)求年龄大于女同学平均年龄的男学生姓名和年龄。
select 姓名,年龄 from 学生
where 性别='男'and 年龄>(select avg(年龄)as'平均年龄'from 学生 where 性别='女')
--(12)统计学生人数超过 5人的班级名称和对应的人数
select 班级,count(学生学号)as '人数'from 学生
group by 班级
having count(学生学号)>=5
--(13)检索课程号和选修人数,查询结果按人数升序排列,若人数相同,按课程号降序排列。
select 成绩课程号, count(成绩学号)as '人数' from 成绩,课程
where 成绩课程号=课程课程号
group by 成绩课程号
order by count(成绩学号) asc,成绩课程号 desc
这道题运用很多知识点,不但用了count 统计 还用了 group by 分组 外加排序
--(14)查询选修课程学生的学号、姓名、所选课程号、取得的成绩
select 学生学号,学生姓名,成绩课程号,成绩成绩 from 学生,成绩
where 学生学号=成绩学号
--(15)查询学生的学号、课程号和成绩等级
select 学号,课程号,成绩,(
CASE
WHEN 成绩>=90 and 成绩<=100 THEN 'A'
WHEN 成绩>=80 and 成绩<90 THEN 'B'
WHEN 成绩>=70 and 成绩<80 THEN 'C'
WHEN 成绩>=60 and 成绩<70 THEN 'D'
ELSE 'E'
END ) as 等级
from 成绩
本题运用了一个新的知识点,这个知识点是在老师的ppt课件上找到的,利用这个语句何以很好很方便的为管理系统中的成绩分等级,所以在本体中一定要记住本语句的语法如:case when……and then ……else end
今天小结,通过今天一天的课程设计,我觉得我收获了很多,因为它让我以前学的不太好的知识点全部都巩固了一遍,尤其是成绩、课程、学生这些表与表的链接,每次不是这里连不上就是那里连不上,但是现在不但可以连上了,还可以帮助其他同学检查出来错误,真是一笔不小的收获,虽然今天做的题比较难,但是每一次在自己的努力下做出来都会有不小的成就感……
3、复杂的结构化查询
星期三 天气 冷 心情 good
外面飘着雪花,美好的一天又已经开始了!实习已经到了一半,离回家的日子也近了很多,所以心情也是越实习越好了!今天的工作当然也完成的比较顺利!虽然有的还挺难的!但是相信自己一定就会成功!嘿嘿……看看自己的劳动成果就知道了!
3、复杂的结构化查询
--(16)查询选修了英语的学生的姓名和成绩;
select 学生姓名,成绩成绩 from 成绩,学生,课程
where 课程课程名='英语'and 学生学号=成绩学号 and 课程课程号=成绩课程号
group by 学生姓名,成绩成绩
--(17)分别统计每个班级的男女人数(要求显示出班级、性别、对应的人数)
SELECT 班级, 性别, COUNT(性别)AS'人数' FROM 学生
group by 班级,性别
--(18)求年龄大于所有女同学年龄的男学生姓名和年龄。
select 姓名,年龄 from 学生
where 性别='男'and 年龄>(select max(年龄) from 学生 where 性别='女')
group by 姓名,年龄
--(19)计算选修了1号课程的学生的平均成绩(要求显示出课程号和对应的平均成绩)
select 课程号,avg(成绩)as'平均成绩'from 成绩
where 课程号='1'
group by 课程号
--(20)查询选修课程学生的学号、姓名、所选课程名、取得的成绩
select 学生学号,姓名,课程课程名,成绩成绩 from 学生,成绩,课程
where 学生学号=成绩学号 and 课程课程号=成绩课程号
--(21)查询学生的学号、姓名、性别及所选修各门课程的成绩(要求每位学生用一个数据行显示这些信息)
SELECT 学生学号, 学生姓名,学生性别,
(select 成绩 from 成绩 where 课程号='1' and 学生学号=学号) as '数学',
(select 成绩 from 成绩 where 课程号='2' and 学生学号=学号) as '英语',
(select 成绩 from 成绩 where 课程号='3' and 学生学号=学号) as '计算机基础',
(select 成绩 from 成绩 where 课程号='4' and 学生学号=学号) as '数据库',
(select 成绩 from 成绩 where 课程号='5' and 学生学号=学号) as '政治',
(select 成绩 from 成绩 where 课程号='6' and 学生学号=学号) as '体育'
FROM 学生 INNER JOIN 成绩 ON 学生学号=成绩学号
GROUP BY 学生学号, 学生姓名,学生性别
--(22)查询李路路所学的课程名和对应的成绩,并按照成绩升序排列。
select 姓名,课程名,成绩 from 学生,课程,成绩
where 姓名='李路路'and 课程课程号=成绩课程号 and 学生学号=成绩学号
order by 成绩
--(23)查询平均成绩大于 75 分的课程,要求显示课程名和平均成绩。
select 课程名,avg(成绩)as'平均成绩' from 课程,成绩
where 课程课程号=成绩课程号
group by 课程名
having avg(成绩)>=75
--(24)查询所选课程平均成绩前三名的那些学生的姓名和平均成绩。
select top 3 学生学号,姓名,avg(成绩成绩)as'平均成绩'from 成绩,学生 where 学生学号=成绩学号 group by 学生学号,姓名 order by avg(成绩成绩) desc
--(25)查询和李工业在同一个班级的学号和姓名
select 学号,姓名 from 学生
where 班级 in (select 班级 from 学生 where 姓名='李工业')
--(26)查询JW0831班中入学成绩比李里高的学生的姓名
select 姓名 from 学生
where 班级='JW0831' and 入学成绩>(select 入学成绩 from 学生 where 姓名='李里')
--(27)在学生表中查询高于入学成绩平均分的学生学号、姓名、班级、入学成绩
select 学号,姓名,班级,入学成绩 from 学生
where 入学成绩>(select avg(入学成绩)as'平均成绩'from 学生)
--(28)查询没有选修课程的学生的学号和姓名
select 学生学号,学生姓名 from 学生
where 学号 not in(select 学号 from 成绩 group by 学号 )
--(29)查询选修了 5(含5) 门以上课程的学生的姓名。
select 姓名 from 学生,成绩,课程 where 成绩课程号=课程课程号 and 学生学号=成绩学号
group by 成绩学号,姓名
having count(成绩学号)>=5
--(30)查找同名同姓的学生信息。
select a1 from 学生 a1,学生 a2
where a1姓名=a2姓名 and a1学号<>a2学号
星期四 天气 冷 心情 good
数据管理
--(1)利用学生表创建一个新表(不含数据):优秀(学号,姓名,性别),
--然后在学生表中检索每一门课程成绩都大于等于80分的学生学号、姓名和性别,
--并把检索到的值送往优秀表中。
select 学号,姓名,性别 into 优秀 from 学生
where 5>6
insert into 优秀 select 学号,姓名,性别 from 学生 where 学号 in (select 学号 from 成绩 group by 学号 having min(成绩)>=80 )
--(2)把李路路同学的选课和成绩全部删去。
delete from 成绩
where 成绩 in(select 成绩 from 学生,成绩 where 学生学号=成绩学号 and 姓名='李路路')
--(3)把低于总平均成绩的女同学成绩提高5%。
UPDATE 成绩 SET 成绩=成绩(1+005) WHERE 成绩<(select avg(成绩成绩)as'平均成绩'from 成绩) and 学号 in(select 学号 from 学生 where 性别='女')
--(4)把选修数学课不及格的成绩全改为空值。
UPDATE 成绩 SET 成绩=null WHERE 成绩<60 AND 课程号=(select 课程号 from 课程 where 课程名='数学')
--(5)在成绩表修改4号课程的成绩,若成绩小于等于75分时提高5%,若成绩大于75分时提高4%(用两个UPDATE语句实现)。
UPDATE 成绩 SET 成绩=成绩05 WHERE 成绩<=75 and 课程号='4'
UPDATE 成绩 SET 成绩=成绩04 WHERE 成绩>75 and 课程号='4'
--(6)将选修4号课程且成绩没有及格的学生的成绩调整为 60 分。
UPDATE 成绩 SET 成绩=60 WHERE 成绩<60 AND 课程号='4'
自定义函数的使用
编写一函数(hws),判断一个整数是否为回文数,若是函数值为“是”,否则为“否”,利用该函数判断回文数基本表中A1列的整数是否为回文数,若是,则A2列的值为“是”,否则为“否”。
create function hws(@A1 int)
returns char(2)
as
begin
declare @y int,@r int,@c char(2),@z int
select @y=0,@z=@A1
while @A1!=0
select @r=@A1%10,@y=@y10+@r,@A1=@A1/10
if @y=@z
set @c='是'
else
set @c='否'
return @c
end
update 回文数 set A2=dbohws(A1)。
星期五 天气 冷 心情 good
游标的使用
利用游标可以访问单独数据行的特点,逐一对三角形基本表中的数据行(三条边)进行处理,求三角形的面积。
Declare yb cursor
For
Selectfrom 三角形
Declare @a float,@b float,@c float,@p float,@s float
Open yb
Fetch next from yb into @a,@b,@c,@s
While @@fetch_status=0
Begin
If @a+@b>@c and @a+@c>@b and @b+@c>@a
select @p=(@a+@b+@c)/20,@s=round(sqrt(@p(@p-@a)(@p-@b)(@p-@c)),2)
else
set @s=null
update 三角形 set s=@s where current of yb
fetch next from yb into @a,@b,@c,@s
end
close yb
deallocate yb
心得体会
时光匆匆,一个星期的实习已经接近尾声了,对于本次的实习心情就是轻松加愉快,收获也是硕果累累,在老师的安排下,实习的过程是根据每天老师给的任务,按时完成作业然后再把报告写完根据规划每天都有条不絮的干着自己的事情,对于我是一个不会安排时间的人,生活中重来没有规划,所以事情每次干完不是紧一阵就是松一阵的,所以通过这次实习中在老师的安排下,自己也懂得了安排时间的重要性,也从中吸取到了一些经验。
在本次实习中我不仅把本学期学习的数据库基本知识进行了点到点的复习,也把它进行了巩固,在原来没有学好的地方通过本次的实习学的比以前学的更好,不仅如此,我们在做课程设计的时候还学会了独自的思考和协作,有些知识点我们运用的不是很好,但是后面再老实的帮助和在同学的探讨下,最后都把它解决了出来。除此之外,我也感觉到实习并不是因为完成任务而实习,它是为了让我们更好的掌握知识,并把知识运用到生活中去的,就像艺术一样,源于生活,而应用于生活一样。数据库的学习,也是为了以后生活中方便自己方便他人而学习的。
由于每天紧张的课程,一路都是匆匆来匆匆去,所以一个班同学的交流也是很少的,通过实习所以同学之间交流的机会也就比较多了一点,比才的感觉也因此增进了不少,以上就是本次在实习中所得到的心得,至于没有感受到的,将在以后的生活中再次的吸取生活中的经验。来进行学习中的总结。
设计一个BBS论坛,该系统的用户分别是:用户和系统管理员。不同的用户拥有不同的权限,各自完成各自的管理功能,不同的用户看到不同的系统功能。用sqlserver2000创建后台数据库,然后利用JSP技术编写程序实现对数据库的 *** 作,按照要求完成所有的功能和模块。
用户的主要功能模块包括:
(1)用户注册与登陆
(2)查看帖子,查询历史帖子
(3)发布帖子
系统管理员的主要功能模块包括:
(1)用户管理
(2)后台数据库维护
(3)论坛信息的分类管理
2、主要数据库表单
(1)登陆用户基本信息表单
主要字段有:用户编号、用户呢称、真实姓名、性别、出生日期、电子信箱
(2)content数据表(每篇文章的详细信息)
主要字段有:id编号、文章标题、是否回帖、文章作者、发表时间、正文
(3)board数据表(各个不同讨论区信息)
主要字段有:讨论区中文描述名、讨论区版主要id、不同讨论区文章总数
(4)保存被封id数据表
主要字段有:id,被查封用户的id
几乎在所有web项目中,都涉及文章分类和标签的设计,应该说这是一个比较常见、典型的案例
站长并不保证我的思路就是最好的,只是分享出来大家一起交流一下,互相促进与提高
我们假设的开发项目是一个博客系统,最核心的部分就是与文章相关的,那么我们今天讨论如何设计博客系统的文章分类和标签
1、首先,分类和标签都是要和具体的文章相关联的,当然也可能一些文章既没有分类也没有标签,这一点是大家在写查询的时候容易疏忽的地方
因为我们的第一感觉就是,在查询文章列表的时候关联分类表,查出所有的文章和分类,对应关系一般是文章表的分类id对应分类表的id,使用where子句进行限定
这里就存在一个问题了,由于使用了where子句,那么只能查询有分类的文章,而没有分类的文章就查询不到了
这时候怎么办?应该使用连接查询,leftjoin,这要没有分类的文章,在文章分类id那一栏会显示null
通常我们只使用leftjoin,而很少使用rightjoin
2、一般,一篇文章最好只对应一个分类,当然如果你想要对应多个分类也可以
但站长并不提倡,文章在多个分类中重复会给人很不专业的感觉,即使有些文章可能确实设计到多方面的内容,那么你应就其中的侧重点来分类
而标签就不一样了,一篇文章可能有多个标签
这就意味着我们无法靠一个sql语句既查出所有文章的分类和标签,又做到查询结果中的文章id不重复
通常我们需要把查询出来的结果直接循环出来,那么这个结果一般是二维数组,第二维的都存储了唯一一篇文章的相关信息
但是,标签和文章是多对一的关系,多个标签对应一篇文章,如果你只用一条sql语句的话,那么我们查询出来的结果,当然也是多行,这不符合我们目标数据的要求
应此,需要在查询完文章和分类之后,在前面结果的基础上再查询一次文章标签,把两次的结果结合起来,存在数组中,这是对应文章列表页面的查询方法
对于具体文章页面,可以分两次查询
好了,还没有给出具体的数据库设计,就先说了如何查询结果,相信大家也看烦了,下面就举例说明:一、文章表:post,字段如下:id唯一标识,aid作者id,title标题,content内容,cid分类id二、分类表,category,字段如下:id唯一标识,与post表的cid关联,name分类名三、标签表,tag,字段如下:id唯一标识,name标签名四、标签与文章对应关系表,tag_,字段如下:id唯一标识,postid文章id,与post表的id关联,tagid标签id,tag表的id关联有朋友可能会问:为什么要单独用一个表来存储文章与标签的对应关系,为什么不可以直接在tag表中增加一个文章id字段呢,比如:tag表:id,postid,name这样做的话,并不是不可以,但是,由于一篇文章对应多个标签,所以name字段的值会出现很多重复,比如一篇文章,假设文章id为1,有2个标签,php和mysql,那么在tag表会这样存储:id:1,postid:1,name:phpid2,postid:1,name:mysql另一篇文章,假设id为2,有2个标签,也是php和mysql,那么在tag表中它会这样存储:id:3,postid:2,name:phpid4,postid:2,name:mysql大家很快就发现了问题,这样的设计name字段也就是标签的名称在同一张表中可能会大量重复
但是这样设计的好处是,如果你要查询一个标签下有多少篇文章,只要单独查这个表就可以了,比如要查询含有php标签的文章有多少篇,只需要selectcount(name)fromtagwherename=’php’,就可以查出来
不好的地方是,如果要查询所有标签的集合,使用这种设计需要使用groupbyname语句来去除重复的行
如果用之前的那种,只需要selectfromtag就可以了
一时之间,好像不太好取舍
这两种设计都会有数据冢余,第一种tag_表中,存在tagid字段的重复;而这两种设计又都有各自的好处
那么我们到底该怎么选择呢?站长也说不好,所以无法为大家下结论
但是站长在研究wordpress数据结构的时候,发现wp是采用的单独建表存储文章与标签对应关系的方式
以上就是关于谁可以帮忙做下这个题目呀 数据库课程设计全部的内容,包括:谁可以帮忙做下这个题目呀 数据库课程设计、一般BBS论坛的数据库应该怎样建啊、如何进行文章分类和标签的数据库设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)