江苏大学数据库课设
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库系统课程设计报告SPJ管理系统的开发与设计
班级:网络工程1102
学号:**********
姓名:***
指导教师:***
时间:2013年7月
一、课程设计目的
熟悉数据库的连接以及对数据库内数据的增删改查,学会结合前台开发工具与后台数据库进行简单的项目开发。
二、课程设计内容
SPJ管理系统的开发与设计
三、开发环境
前台开发工具为Visual Studio 2010 C#,后台数据库为SQL Server 2008 四、需求分析
SPJ管理系统包括供应商信息管理,零件信息管理,项目信息管理及供应情况管理,项目最低需求管理,零件库存管理等功能。
具体功能有如下几个方面:
1.供应商信息的添加、修改、删除和查询;
2.零件信息的添加、修改、删除和查询;
3.项目信息的添加、修改、删除和查询;
4.供应情况管理,包括各供应商供应情况的添加、修改、删除和查询。
5.项目最低需求的添加、修改、删除和查询。
6.零件库存管理的添加、修改、删除和查询。
7.塞选出库存零件不足的项目及根据需求增加库存等。
五、系统设计
1.流程图
2.概念模型设计
由需求分析的结果可知,本系统设计的实体及联系包括:(1)供应商基本信息:供应商号,供应商名,状态,城市。
(2)零件基本信息:零件号,零件名,颜色,重量。
(3)工程项目基本信息:项目号,项目名,城市。
(4)供求关系基本信息:供应商号,零件号,项目号,供应数量。(5)零件库存信息:零件号,数量。
(6)最低需求信息:项目号,零件号,数量。
由上述分析可得到系统的E—R图:
3逻辑和物理结构设计
由系统E—R图转化而得到的关系模式如下:
(1)零件(零件号,零件名,颜色,重量),其主关键字为零件号; (2)供应商(供应商号,供应商名,状态,城市),其中主关键字为供应商号;
(3)项目(项目号,项目名,城市),其主关键字为项目号;(4)供求关系(供应商号,零件号,项目号,供应数量),其主关键字为供应商号,零件号,项目号;
(5)库存(零件号,数量)其主关键字为零件号;
(6)需求(项目,零件,数量)其主关键字为项目号,零件号;
根据设计好的E-R图在数据库中建立各表
供应商信息表:
供应情况信息表:
库存信息表:
最低需求情况信息表:
4.数据库实施
运行SQL Server 2008,建立数据库表。建供应商表S:
CREATE TABLE S (
SNO CHAR(5) PRIMARY KEY,
SNAME CHAR(10),
STATUS CHAR(4),
CITY CHAR(10));
建零件表P:
CREATE TABLE P (
PNO CHAR(5) PRIMARY KEY,
PNAME CHAR(10),
COLOR CHAR(10),
WEIGHT INT);
建项目表J:
CREATE TABLE J (
JNO CHAR(5) PRIMARY KEY,
JNAME CHAR(10),
CITY CHAR(10));
建供求关系表SPJ:
CREATE TABLE SPJ (
SNO CHAR(5),
PNO CHAR(5),
JNO CHAR(5),
QIY INT,
PRIMARY KEY (SN0,PN0,JN0), FOREIGN KEY(SNO) REFERENCES S(SNO), FOREIGN KEY(PNO) REFERENCES P(PNO), FOREIGN KEY(JNO) REFERENCES J(JNO));
运行Visual Studio 2010 C#,建立如下窗体;
1.主界面
各表格窗口
2.增、删、改、查的实现1.添加按钮,可实现数据的添加
代码如下:
public partial class addS : Form
{
public addS()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if( textBox1.Text==" "||textBox2.Text==" "||textBox3.Text==" "||textBox4.Text==" ")
MessageBox.Show("请?输?入?完?整?信?息¢!?");
else
{
string connectionString = "Data Source=DY-PC;Initial Catalog=SPJ;Integrated Security=True";
SqlConnection con = new SqlConnection(connectionString);
con.Open();//打洙?开a连?接ó
SqlCommand cmd = new SqlCommand("select * from S where SNO='"+ textBox1.Text + "'", con);
cmd.ExecuteNonQuery();
if (null != cmd.ExecuteScalar())
MessageBox.Show("供?应畖商Θ?号?重?复′");
else