C#版网上购物系统.docx

上传人:b****6 文档编号:7197987 上传时间:2023-01-21 格式:DOCX 页数:16 大小:186.30KB
下载 相关 举报
C#版网上购物系统.docx_第1页
第1页 / 共16页
C#版网上购物系统.docx_第2页
第2页 / 共16页
C#版网上购物系统.docx_第3页
第3页 / 共16页
C#版网上购物系统.docx_第4页
第4页 / 共16页
C#版网上购物系统.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

C#版网上购物系统.docx

《C#版网上购物系统.docx》由会员分享,可在线阅读,更多相关《C#版网上购物系统.docx(16页珍藏版)》请在冰豆网上搜索。

C#版网上购物系统.docx

C#版网上购物系统

一、需求分析2

1.1需求概述2

1.2功能简介2

1.3网上购物系统功能结构图3

二、数据库设计3

2.1确定联系集3

2.2画出E-R图4

2.3网上购物系统总E-R图6

三、数据表设计7

3.1用户表7

3.2商家表7

3.3美食表8

3.4家电表8

3.5百货表8

3.6销售表9

3.7评价表9

四、windows窗体应用程序10

4.1visualstudio2010连接数据库sqlsever200810

4.2登陆界面11

4.3用户添加商品界面12

4.4家电管理界面15

五、总结17

一、需求分析

1.1需求概述

随着市场经济的逐渐形成,全球化经济已在国内迅速发展起来。

以往的销售模式正在受到空前的挑战:

人们已经对去固定的场所、购买(出售)固定的物品的交易方式所带来的不便越来越感到不满,交易时间长、效率低。

高额的运费、销售场地的凭租费等繁多的额外开支也给商家带来沉重的成本支出。

为了适应市场、适应经济前进的步伐,买家和商家都在努力积极地寻找一种能够带来高效率、低成本销售模式。

计算机及世界互联网的飞速发展使得这种新的销售模式成为可能。

近来网上商城已慢慢被人们所熟悉,网上购物这种生活方式已悄然形成。

网上商城使得商家可以把商店开到互联网上来、而买家也可以到互联网上选择购买自己喜欢的东西。

网上商城不需要商店的凭租费;新商品可以用最短的时间吸引顾客的眼球,因为它不需要那么长的运输时间。

网上商城为商家节省了大笔的运输费用、场地凭租费等额外成本,同时也为买家带来了无穷的方便性。

因为它不需要你花上半天活一天的时间去商场在玲郎满目的众多商品中选择你需要的东西。

网上商城使得“买东西、不出门”成为现实。

随着计算机技术、通信技术的日益发展,互联网的逐步深入与应用,网上商城越来越多的出现在我们的身边,它直接作为一种先进的交易方式,被越来越多的人所接受。

网上购物最大程度地方便了用户,你可以通过浏览器实现WEB勾物。

网上购物不仅改变了公司进行运作的模式,使网上商城成为传统商务的补充和发展,也使人们改变了消费的观念和消费习惯。

自从几十年前电子计算机的出现,就为网上购物的发展创造了客观条件。

但是它的发展还要借助于网络,所以其快速发展是在因特网的广泛应用上。

可以预见,网上购物将成为商业普及、贸易的主流,必将影响着千家万户的生活和消费行为,并日益成为社会商业贸易活动的重要形式

1.2功能简介

用户可以登陆系统游览商品信息,图片,将想要购买的物品放入购物车,然后

支付账单,收到货物后可以对购买的货物进行评价。

商家可以登陆系统管理商品,比如增加商品信息,可以查看商品销售量和库存量,查看买家留言。

1.3网上购物系统功能结构图

 

2.1确定联系集

根据前面对系统进行的分析,已经初步了解了网上购物系统的数据处理流程,找出与系统有关的各个实体及其相互联系如下:

用户(用户名,用户密码)

美食(美食编号,美食名字,美食价格,用户名)家电(家电编号,家电名字,家电价格,用户名)

美食(百货编号,百货名字,百货价格,用户名)销售(销售编号,销售物品名,销售地址,商家名)评价(评价信息,用户名)

2.2画出E-R图

用户信息图如下:

商家信息图如下:

商家

图2-2-2商家实体集E-R图

美食信息图如下:

美食

家电信息图如下:

百货信息图如下:

图2-2-5百货实体集E-R图

销售信息图如下:

 

图2-2-6销售实体集E-R图

评价信息图如下:

2.3网上购物系统总E-R图

根据上面对实体联系的分析,可以画出E-R图如下:

 

三、数据表设计

3.1用户表

字段名

别名

数据类型

字段限制

用户名字

sname

Varchar(50)

Primarykey

用户密码

spsd

Varchar(50)

Notnull

3.2商家表

字段名

别名

数据类型

字段限制

商家名字

ssname

Varchar(50)

Primarykey

商家密码

sspsd

Varchar(50)

Notnull

3.3美食表

字段名

别名

数据类型

字段权限

美食编号

tno

int

Primarykey

美食名字

tname

Varchar(50)

Notnull

美食价格

tprise

Varchar(50)

Notnull

用户名

tuse

Varchar(50)

Foreignkey

3.4家电表

字段名

别名

数据类型

字段权限

豕电编号

yno

int

Primarykey

家电名字

yname

Varchar(50)

Notnull

家电价格

yprise

Varchar(50)

Notnull

用户名

yuse

Varchar(50)

Foreignkey

3.5百货表

字段名

别名

数据类型

字段权限

百货编号

eno

int

Primarykey

百货名字

cname

Varchar(50)

Notnull

百货价格

cprise

Varchar(50)

Notnull

用户名

cuse

Varchar(50)

Foreignkey

3.6销售表

字段名

别名

数据类型

字段权限

销售编号

xnumber

Varchar(50)

Primarykey

销售名字

xname

Varchar(50)

Notnull

销售地址

address

Varchar(50)

Notnull

商家名

xuse

Varchar(50)

Foreignkey

3.7评价表

字段名

别名

数据类型

字段权限

评价信息

informatio

Varchar(100)

Primarykey

用户名

puse

Varchar(50)

Foreignkey

4.windows窗体应用程序

4.1visualstudio2010连接数据库sqlsever2008

代码解释:

创建SqlConnection的对象conn为了连接数据库(本人电脑名为丫丫,通过sqlsever身份验证连接数据库(登陆名:

sa,密码:

123),数据库名为ShopOnlineyy)

SqlConnectionconn=newSqlConnection("Server=YY-PC;UserId=sa;Pwd=123;DataBase=ShopOnlineyy");

如果Sqlconncection对象conn的赋值有误,就会出现下面的程序错误:

在与sqlsever进行连接时出现错误,无法打开到sqlsever的连接。

privatevoidconboBox1edlrLdeKChang.*d(objectsenderpEventArjee)

(coroboBox].Text=s[0])

stringstr="Server=YY-PC;UserId=ss;Pvd-i23;Da±aBaff&=ShQp0nlineyyrt;SqlConnectionsqlcon=nevSqlConntction(str>;

SqlD:

at^Adaptersqlada三nevSqlDat-aAdapter("seLeet*from没倉sqlcon):

DataSetds-newDataSel();

sqlada.FilHds,

dataGridVievLDataSouz

4.2登陆界面

代码解释:

Forml为登陆界面,Form2为用户主界面,Form3为商家主界面。

if语句进行选择判断,如果没有输入用户名,密码或者用户名,密码不正确,程序将弹出“错误提示”的窗体。

程序代码如下:

privatevoidlabel1Click(objectsender,EventArgse)

{label1.Text="用户名称";

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

if(textBox1.Text==string.Empty)

{

MessageBoxShow("用户名称不能为空!

","错误提示",MessageBoxButtons.OK,MessageBoxIcon.Error);

return;

}

if(textBox1.Text=="小李"&&textBox1.Text=="小明"&&textBox1.Text=="

小军"&&textBox1.Text=="小刘"&&textBox2.Text=="yy"&&radioButton1.Checked==true)

{

Form2f2=newForm2D;

if(textBoxl.Text=="大李"&&textBoxl.Text=="大黄"&&textBoxl.Text

=="大刘"&&textBox2.Text=="123"&&radioButton2.Checked==true)

{

Form3f3=newForm3();

f3.Show();

}

else

{

this.Visible=false;

MessageBoxShow(”用户名称或密码不正确!

",”错误提示"MessageBoxButtons.OK,MessageBoxIcon.Error);

}

}

privatevoidlabel2_Click(objectsender,EventArgse)

{

label2.Text="用户密码";

label2.ForeColor=Color.Black;

this.Close();

}

4.3用户添加商品界面

海加

种类:

家电

电饭煲

价榕:

4500

添加威功

代码解释:

boBoxI下选择物品种类:

美食,家电,百货。

选择家电。

连接到数据库,并在家电表中插入所选家电名字,价格。

程序中

Convert.Tolnt32(m.ExecuteNonQuery())>0,判断在数据库中命令是否执行,

如果满足条件则成功在数据库中添加数据。

程序如下:

privatevoidForm8_Load(objectsender,EventArgse)

{匚

boBox1.DropDownStyle=boBoxStyle.DropDownList;

str=newstring[]{"美食",“家电","百货“};

boBox1.DataSource=str;

boBox1.SelectedIndex=0;

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

SqlConnectionconn=newSqlConnection("Server=YY-PC;UserId=sa;Pwd=123;DataBase=ShopOnlineyy");

if(boBox1.Text==str[0])

{

stringstrsql="insertinto美食(name,prise)values('"+textBox1.Text

+"','"+textBox2.Text+"')";

Sqlmandm=newSqlmand(strsql,conn);

if(conn.State==ConnectionState.Closed)

conn.Open();

if(Convert.ToInt32(m.ExecuteNonQuery())>0)

{label3.Text="添加成功!

“;

}

else

{label3.Text="添加失败!

“;

}

conn.Close();

stringstrsql="insertinto家电(tname,tprise)values('"+textBox1.Text+":

"+Convert.ToDecimal(textBox2.Text)+")";|

Sqlmandm=newSqlmand(strsql,conn);

if(conn.State==ConnectionState.Closed)

conn.Open();

if(Convert.Tolnt32(m.ExecuteNonQuery())>0)

}

else

{

label3.Text="添加失败!

}

conn.Close();

+textBoxl.Text

stringstrsql="insertinto百货(yname,yprise)values('"

+":

"+Convert.ToDecimal(textBox2.Text)+")";|

Sqlmandm=newSqlmand(strsql,conn);

if(conn.State==ConnectionState.Closed)

conn.Open();

if(Convert.ToInt32(m.ExecuteNonQuery())>0)

{

label3.Text="添加成功!

";

}1

else

{

label3.Text="添加失败!

}

conn.Close();

}

}

4.4家电管理界面

详细信息

名称:

电饭煲价格:

4600

yprise

«

\2

电饭煲

4500

■d译

査询

代码解释:

Form9为本界面,通过sqlconnection对象连接数据库,单击查询,更新,删

除分别调用数据库中select,update,delete方法,

程序如下:

publicpartialclassForm9:

Form

{

publicForm9()

{

Initializeponent();

}

tringstr=

"Server=YY-PC;UserId=sa;Pwd=123;DataBase=ShopOnlineyy"

s

SqlConnection

sqlcon2;

SqlDataAdaptersqlada2;

DataSetds2;

privatevoidForm9_Load(objectsender,EventArgse)

{

sqlcon2=newSqlConnection(str);

sqlada2=newSqlDataAdapter("select*from家电",sqlcon2);

ds2=newDataSet();

sqlada2.Fill(ds2);

dataGridViewl.DataSource=ds2.Tables[0];

for(inti=0;i

dataGridView1.Columns[i].SortMode=

DataGridViewColumnSortMode.NotSortable;

dataGridView1.SelectionMode=DataGridViewSelectionMode.FullRowSelect;

dataGridView1.DefaultCellStyle.SelectionBackColor=Color.LightSkyBlue;

}

privatevoidbutton1_Click(objectsender,EventArgse)

 

ds2.Tables.Clear();

sqlcon2=newSqlConnection(str);

sqlada2=newSqlDataAdapter("select*from家电",sqlcon2);

sqlada2.Updatemand=newSqlmand("update家电settname=@tname,

tprise=@tprisewheretno=@tno",sqlcon2);

sqlada2.Updatemand.Parameters.Add(

"@tname:

SqlDbType.Char,10,"tname");

sqlada2.Updatemand.Parameters.Add(

"@tprise",

SqlDbType.Char,10,

"tprise");

SqlParameterprams_tno=sqlada2.Updatemand.Parameters.Add("@tno",

SqlDbType.Int);

prams_tno.SourceColumn="tno";

prams_tno.SourceVersion=DataRowVersion.Original;

sqlada2.Fill(ds2);

for(inti=0;i

{

ds2.Tables[0].Rows[i]["tname"]=

dataGridView1.Rows[i].Cells[1].Value.ToString();

ds2.Tables[0].Rows[i]["tprise"]=

dataGridView1.Rows[i].Cells[2].Value.ToString();

「}

sqlada2.Update(ds2);

dataGridViewl.DataSource=ds2.Tables[0];

}

intintID=(int)dataGridView1.Rows[e.RowIndex].Cells[O].Value;

sqlcon2=newSqlConnection(str);

sqlada2=newSqlDataAdapter("select*from家电wheretno="+intID+

"",sqlcon2);

ds2=newDataSet();

sqlada2.Fill(ds2);

if(ds2.Tables[0].Rows.Count>0)

textBoxl.Text=ds2.Tables[0].Rows[0][1].ToString();

textBox2.Text=ds2.Tables[0].Rows[0][2].ToString();

}

}

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

sqlcon2=newSqlConnection(str);

sqlada2=newSqlDataAdapter("select*from家电",sqlcon2);

ds2=newDataSet();

sqlada2.Fill(ds2);

dataGridViewl.DataSource=ds2.Tables[0];

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

if(MessageBoxShow("确实要删除该行吗?

","询问",MessageBoxButtons.YesNo)==DialogResult.Yes)

「{

stringde="deletefrom家电wheretno=@tno";

stringstr="Server=YY-PC;UserId=sa;Pwd=123;DataBase=ShopOnlineyy";

SqlConnectionsqlcon2=newSqlConnection(str);|

Sqlmand=newSqlmanc(de,sqlcon2);

.Parameters.Add("@tno",SqlDbType.Char,10);

sqlcon2.Open();|

foreach(DataGridViewRowrowindataGridViewl.SelectedRows)

{1

.Parameters]"@tno"].Value=row.Cells[0].Value;

dataGridViewl.Rows.Remove(row);

.ExecuteNonQuery();

}

sqlcon2.Close();

}

}

五、总结

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 司法考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1