版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGEPAGE8《数据库原理及应用》课程设计设计报告院系班级学号姓名指导老师题目年12月14日ﻬ摘要:家庭理财系统,即FamilyConductFinancialTransactionsSystem。它利用计算机应用技术,使家庭理财逐步信息化,从而形成由家庭成员与计算机共同构成服务于家庭的人机信息财务管理系统。随着计算机进展,家庭理财系统已经成为很多家庭财务管理的一个重要途径。计算机的最大优点在于利用它能够高效精准地进行财务信息管理。使用计算机进行信息财务管理,不仅提高了工作效率,而且大大的提高了其平安性。家庭财务管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据全都性和完整性强、数据平安性好的库。而对于后者则要求应用程序功能完备,易使用等特点.关键字:家庭理财;数据库;Summary:Thefamilyfinancialmanagementsystem,namelytheFamilyConductFinancialTransactionsSystem.
Itusescomputertechnologytomakefamilyfinancialmanagementstepbystepinformation,toformthecomputerbyfamilymemberstogetherconstitutethehuman-computerinformationservicesinthefamilyfinancialmanagementsystem。
Withthecomputerdevelopment,familyfinancialmanagementsystem,manyfamiliesinfinancialmanagementhasbecomeanimportantway.
Thebiggestadvantageisthatthecomputercanuseittocarryoutefficientandaccuratefinancialinformationmanagement.
Financialmanagementofinformationusingcomputersnotonlyimprovetheworkingefficiency,butalsogreatlyimproveitssafety.Familyfinancialmanagementsystemisatypicalmanagementinformationsystem(MIS),whichmainlyincludestheestablishmentandmaintenanceofback-enddatabaseandfront—endapplicationdevelopmentaspects.
Requestfortheestablishmentofdataconsistencyandintegrity,datasecurity,agoodlibrary。
Forthelatterapplicationpowerful,easytouseandsoon.ﻫKeywords:familyfinancialmanagement;database;TOC\o"1—3"\h\z\uHYPERLINK\l"_Toc280119444"摘要:ﻩPAGEREF_Toc280119444\h1HYPERLINK\l"_Toc280119445”1家庭理财管理ﻩPAGEREF_Toc280119445\h2HYPERLINK\l"_Toc280119446"1。1需求分析ﻩPAGEREF_Toc280119446\h2HYPERLINK\l"_Toc280119447"1。2数据库概念结构设计ﻩPAGEREF_Toc280119447\h3HYPERLINK\l"_Toc280119448"1。2.1概念结构设计 PAGEREF_Toc280119448\h3HYPERLINK\l"_Toc280119449"1.2.2数据库设计ﻩPAGEREF_Toc280119449\h5HYPERLINK1.3系统功能模块设计ﻩPAGEREF_Toc280119450\h6HYPERLINK\l”_Toc280119451"1.3.1系统功能模块划分ﻩPAGEREF_Toc280119451\h6HYPERLINK\l"_Toc280119452"1.3.2系统功能模块图ﻩPAGEREF_Toc280119452\h7HYPERLINK\l"_Toc280119453"1.4系统简略设计ﻩPAGEREF_Toc280119453\h7HYPERLINK\l”_Toc280119454"1。4.1登录界面设计ﻩPAGEREF_Toc280119454\h7HYPERLINK\l”_Toc280119455"1。4.2系统主界面ﻩPAGEREF_Toc280119455\h9HYPERLINK\l"_Toc280119456"1。4.3系统管理ﻩPAGEREF_Toc280119456\h11HYPERLINK\l"_Toc280119457"1.4.3。1修改密码ﻩPAGEREF_Toc280119457\h11HYPERLINK\l"_Toc280119458"1。4.4基础数据管理ﻩPAGEREF_Toc280119458\h13HYPERLINK\l"_Toc280119459”1。4.4。1家庭成员管理ﻩPAGEREF_Toc280119459\h13HYPERLINK\l"_Toc280119460"1.4。4.2收支项目管理ﻩPAGEREF_Toc280119460\h15HYPERLINK1.4.5储蓄管理ﻩPAGEREF_Toc280119461\h20HYPERLINK1.4.6理财分析ﻩPAGEREF_Toc280119463\h23HYPERLINK\l”_Toc280119464"1.4。6.1查询明细ﻩPAGEREF_Toc280119464\h23HYPERLINK1。4.6。2理财报告ﻩPAGEREF_Toc280119465\h27HYPERLINK\l"_Toc280119466"1。4.7帮助ﻩPAGEREF_Toc280119466\h27HYPERLINK\l"_Toc280119467"总结:ﻩPAGEREF_Toc280119467\h28HYPERLINK\l”_Toc280119468”参考文献ﻩPAGEREF_Toc280119468\h281家庭理财管理1.1需求分析长期以来人们使用传统的大脑记忆方式来管理家里的日常消费,这格外麻烦,靠大脑的记忆,只能记住很短的时间,所以常常为钱不知去向而烦恼。而有时常常会想不起一些消费记录,家里的理财很是混乱。综上所述,靠人脑记忆理财存在很大的不足.而家庭理财系统则为家庭解决了上述问题,供应了快速,直观明白的理财过程,便利使用.家庭理财管理系统是针对用户的要求,用计算机对自己的财务的收入、支出以及相关的各种信息,进行记录、修改、添加、删除而设计的一种现代化管理软件.通过需求分析,本系统需要具有以下功能:(1)要求系统具有良好的人机界面。(2)能够完善家庭理财管理系统的各项功能,能成功的对用户各种信息进行管理。(3)查询、修改、删除、添加数据便利,数据的平安性和牢靠性好。(4)系统最大限度地实现了易维护性和易操作性.1。2数据库概念结构设计1.2.1概念结构设计建立系统数据模型的主要工具是实体-联系图,即E-R图.E-R图的图形符号约定如表1—1所示:表1-1E—R图的图形符号图形符号说明表示实体集合表示属性表示关系集将属性连接到实体集或将实体集连接到联系集系统的E-R图,如图1—1所示,每个实体及属性如下:家庭成员:姓名、称呼、密码、诞生日期收入记录:收入项目编号、收入项目名称、收入人员、收入金额、收入日期支出记录:支出项目编号、支出项目名称、支出人员、支出金额、支出日期银行信息:银行账号、银行名称、开户人、存款金额、开户日期家庭成员家庭成员姓名密码称呼出生日期家庭成员关系E-R图收入记录收入记录项目名称项目编号收入金额收入人员收入日期收入记录E—R图支出记录支出记录项目名称支出人员支出日期支出金额项目编号支出记录E-R图银行信息银行信息银行账号开户人存款金额银行名称开户日期银行信息E-R图属于属于属于属于支出记录收入记录支出记录支出记录图1-1系统总E.—R图1.2.2数据库设计系统数据库名为:财务管理,数据库中包括:家庭成员表(member),收入记录表(income),支出记录表(outcome),银行信息表(bank),各个表的数据结构如下表1-1~表1-4所示。表1-1家庭成员表(member)的数据结构字段名类型描述namenchar(8)姓名callnchar(10)称呼pwdnchar(10)密码birthnchar(20)诞生日期表1—2收入记录表(income)的数据结构字段名类型描述inproIDsmallint收入项目编号inproNamenchar(15)收入项目名称callnchar(10)收入人员inmoneyint收入金额indatanchar(15)收入日期表1-3支出记录表(outcome)的数据结构字段名类型描述outproIDsmallint支出项目编号outproNamenchar(15)支出项目名称callnchar(10)支出人员outmoneyint支出金额outdatanchar(15)支出日期表1-4银行信息表(bank)的数据结构字段名类型描述bankIDnchar(15)银行账号bankNamenchar(20)银行名称callnchar(10)开户人moneyint存款金额datanchar(15)开户日期表与表之间的关系:图1-2表与表的关系图1。3系统功能模块设计1。3。1系统功能模块划分简略说来,要求本系统具有以下几个功能模块:用户登录模块、用户管理模块、收入模块、支出模块、密码管理模块、账目统计模块、报表输出模块以及查询模块。各模块简略的需求描述如下:(1)用户登录模块用户登录:验证用户的信息是否合法,以及验证用户是否为系统的合法用户。(2)用户管理模块在系统中主要包括添加用户、删除用户、更改用户、用户修改密码。(3)收支输入模块主要实现对收入和支出记录的添加、删除、修改.(6)报表输出模块主要实现对收入、支出记录的输出及打印。(7)查询模块主要实现对收入、支出记录按时间按类型查询、消费提醒(实际消费额快接近预消费额)、收入、支出记录的输出.1.3.2系统功能模块图理财报告理财报告家庭理财管理系统重新登录用户登录管理家庭成员管理姓名密码修改密码项目名称出生日期收支项目管理收入项目管理称呼项目编号支出项目管理理财分析收入日期收入金额收入人员项目名称项目编号支出日期支出金额支出人员银行名称银行账号开户日期存款金额开户人银行信息管理查询明细图1-3系统功能模块结构图1.4系统简略设计启动VisualStudio2008,选择“文件"|“新建"|“项目"即命令,建立家庭理财管理应用程序。下面介绍各窗体的程序设计。1.4.1登录界面设计登录界面的作用就是推断用户身份的合法性。输入用户名和密码,若用户名、密码正确,单击[登录系统]按钮,即可进入主界面,否则不能进入。登录界面效果,如图1-4所示:图1-4登录界面该窗体中设计了2个TextBox控件和两个Button控件。各个控件的名称、作用如表4-7所示: 表1-5登录界面主要控件设计控件类型控件名称作用TextBoxtextBox1用户名textBox2用户密码Buttonloginbtn登录系统exitbtn退出系统登录界面部分代码:privatevoidloginbtn_Click_1(objectsender,EventArgse)//登录{SqlConnectioncn=newSqlConnection("datasource=.;InitialCatalog=财务管理;IntegratedSecurity=true;”);try{cn。Open();SqlCommandcmd=newSqlCommand(”selectname,pwdfrommemberwherename='"+textBox1.Text+"'andpwd='"+textBox2.Text+"’”,cn);cmd。ExecuteNonQuery();MainFormform2=newMainForm(textBox1.Text);form2.Show();this.Hide();}catch(SqlExceptionex){MessageBox。Show(”用户名或密码错误!请检查!"+ex.Message);}finally{cn.Close();}}当单击“退出系统”按钮时,触发exitbtn_Click大事,关闭当前窗体。代码如下:privatevoidexitbtn_Click_1(objectsender,EventArgse)//退出{this.Close();}另外,在登录界面消灭前,Login窗体设置为消隐,代码如下:privatevoidtimer1_Tick(objectsender,EventArgse){this。Opacity-=0.03;if(this.Opacity==0){timer1.Enabled=false;this.FormBorderStyle=FormBorderStyle。Sizable;this.Opacity=1;label1.Visible=true;label2.Visible=true;label3.Visible=true;textBox1.Visible=true;textBox2.Visible=true;loginbtn。Visible=true;exitbtn.Visible=true;}}在窗体加载时,启动Timer,代码如下:privatevoidForm1_Load(objectsender,EventArgse){timer1.Enabled=true;}1.4。2系统主界面通过身份验证后,进入系统主界面,如图1-5所示,该主界面的作用就是显示用户所拥有的全部的功能菜单项,当用户单击相应的菜单项时,打开对应的模块窗口。图1-5系统主界面系统主界面部分代码:1、在主界面中选择【系统管理】|【修改密码】命令菜单,就会触发修改密码ToolStripMenuItem_Click大事,进入修改密码界面.代码如下:privatevoid修改密码ToolStripMenuItem1_Click(objectsender,EventArgse){ModifyPwdform3=newModifyPwd(name);form3.Show();}2、在主界面中选择【重新登录】命令菜单,就会触发重新登录ToolStripMenuItem_Click事,进入登录界面.代码如下:privatevoid重新登录ToolStripMenuItem2_Click(objectsender,EventArgse){Loginf1=newLogin();f1.Show();this.Close();}3、在管理员主界面中选择【退出系统】命令菜单,就会触发退出系统ToolStripMenuItem_Click大事,整个程序退出.代码如下:privatevoid退出系统ToolStripMenuItem2_Click(objectsender,EventArgse){this.Close();}1.4.3系统管理1.4.3.1修改密码在主界面中选择【系统管理】|【修改密码】命令菜单,即可进入修改密码界面,如图1—6所示.该窗体中需要供应的信息包括:用户名、密码、确认密码。信息录入后单击“确认"按钮,代码如下:图1—6修改密码界面在该窗体中主要设计了4个TextBox控件、2个Button控件。各个控件的名称、作用如表5—8所示。表1-6添加管理员界面控件设计控件类型控件名称作用TextBoxtextBox1用户名textBox2原密码textBox3用户新密码textBox4确认密码ButtonButton1确认Button2取消1、单击“确认”按钮时触发button1_Click大事,第一步推断原密码是否正确;若正确,其次步推断两次密码是否相同;若相同则修改密码。代码如下:privatevoidbutton1_Click(objectsender,EventArgse)//确认{Stringpwd=”";SqlConnectioncn=newSqlConnection(”datasource=。;InitialCatalog=财务管理;IntegratedSecurity=true;");try{cn。Open();SqlCommandcheckCmd=newSqlCommand("selectpwdfrommemberwherename='"+textBox1.Text+"'”,cn);SqlDataReaderdr=checkCmd.ExecuteReader();if(dr。Read()){pwd=dr[0].ToString();}if(textBox2.Text!=pwd.Trim()){MessageBox.Show("原密码输入错误!请重新输入!");}if(textBox2.Text==”"||textBox3.Text==””||textBox4.Text==”"){MessageBox。Show("警告:密码不能为空!");}if(textBox3.Text!=textBox4.Text){MessageBox.Show("警告:两次输入的密码必须相同!");}}catch(SqlExceptionex){MessageBox.Show(ex.Message);}finally{cn。Close();}try{cn.Open();SqlCommandmodifyCmd=newSqlCommand(”updatemembersetpwd=’"+textBox3.Text+"'wherename='"+textBox1.Text+"’”,cn);modifyCmd.ExecuteNonQuery();MessageBox.Show("修改成功!”);this。Close();}catch(SqlExceptionex){MessageBox.Show("修改失败!"+ex.Message);}finally{cn。Close();}}2、单击“取消"按钮时,将触发cancel_Click大事,关闭当前窗体。代码如下:privatevoidcancelbtn_Click(objectsender,EventArgse){this.Close();}1.4.4基础数据管理1.4。4.1家庭成员管理在主界面中选择【基础数据管理】|【家庭成员管理】命令菜单,即可进入家庭成员管理界面,如图1-7所示.图1-7家庭成员管理家庭成员添加界面主要代码:1、窗体加载时触发Form4_Load大事,通过该大事向dataGridView控件中填入member表的内容,代码如下:voiddisplay(){ds.Clear();SqlCommandcmd=newSqlCommand("selectname'姓名’,pwd’密码’,call'称呼',birth'诞生日期'frommember",cn);da=newSqlDataAdapter(cmd);da。Fill(ds,"member");dataGridView1。DataSource=ds.Tables[”member"];}privatevoidForm4_Load(objectsender,EventArgse){display();cn.Open();channametxb.DataBindings.Add("Text”,ds.Tables["member"],ds。Tables[”member"].Columns["姓名"]。ColumnName);chanpwdtxb.DataBindings.Add(”Text”,ds.Tables[”member"],ds.Tables[”member”]。Columns["密码"]。ColumnName);chancalltxb.DataBindings。Add("Text”,ds.Tables[”member”],ds.Tables["member”].Columns[”称呼”].ColumnName);chanbirtxb.DataBindings。Add(”Text”,ds.Tables["member"],ds.Tables["member”].Columns[”诞生日期"]。ColumnName);delnametxb.DataBindings。Add(”Text”,ds.Tables["member"],ds。Tables["member”]。Columns["姓名"]。ColumnName);delpwdtxb。DataBindings.Add("Text",ds.Tables["member"],ds.Tables["member"]。Columns["密码"].ColumnName);delcalltxb。DataBindings.Add(”Text",ds。Tables["member"],ds.Tables["member”].Columns["称呼"].ColumnName);delbirtxb。DataBindings.Add("Text",ds.Tables["member"],ds。Tables[”member"].Columns["诞生日期”]。ColumnName);cn。Close();}2、点击“添加“按钮时,触发addbtn_Click大事,向member表中添加一条信息,并在dataGridView中显示,代码如下:privatevoidaddbtn_Click(objectsender,EventArgse)//添加{Stringstr=String.Format("insertintomembervalues('{0}’,'{1}','{2}','{3}')”,addnametxb.Text.Trim(),addcalltxb.Text.Trim(),addpwdtxb。Text.Trim(),addbirtxb.Text。Trim());SqlCommandcmd=newSqlCommand(str,cn);try{cn。Open();cmd.ExecuteNonQuery();display();MessageBox.Show("添加成功!");}catch(SqlExceptionex){MessageBox.Show(ex.Message);}finally{cn。Close();}}3、点击“修改“按钮时,触发modifybtn_Click大事,修改member表中的某条信息,并在dataGridView中显示,代码如下:privatevoidmodifybtn_Click(objectsender,EventArgse)//修改{Stringstr=String.Format("updatemembersetcall='”+chancalltxb.Text.Trim()+"',pwd='”+chanpwdtxb.Text.Trim()+"’,birth='"+chanbirtxb。Text.Trim()+"'wherename=’"+channametxb。Text.Trim()+"’");SqlCommandcmd=newSqlCommand(str,cn);try{cn.Open();cmd.ExecuteNonQuery();display();MessageBox。Show("修改成功!");}catch(SqlExceptionex){MessageBox.Show(ex。Message);}finally{cn.Close();}}4、点击“删除“按钮时,触发deltn_Click大事,从member表中删除一条信息,并在dataGridView中显示,代码如下:privatevoiddelbtn_Click(objectsender,EventArgse)//删除{Stringstr=String。Format("deletefrommemberwherename='”+delnametxb.Text.Trim()+"'");SqlCommandcmd=newSqlCommand(str,cn);try{cn.Open();cmd。ExecuteNonQuery();display();MessageBox.Show(”删除成功!”);}catch(SqlExceptionex){MessageBox。Show(ex.Message);}finally{cn.Close();}}1.4.4.2收支项目管理在主界面中选择【基础数据管理】|【收支项目管理】命令菜单,即可进入收支项目管理界面,如图1-8所示。图1—8收支项目管理界面收支项目管理界面主要代码:窗体加载时触发Form5_Load大事,通过该大事向dataGridView控件中填入income和outcome表的内容,代码如下:privatevoiddisplayIncome(){dsIn.Clear();cmdIn=newSqlCommand(”selectdistinctinproID'项目编号',inproName'项目名称',call'收入人员',inmoney'收入金额',indata'收入日期'fromincome",cn);da=newSqlDataAdapter(cmdIn);da.Fill(dsIn,"income");dataGridView2.DataSource=dsIn.Tables["income”];}privatevoiddisplayOutcome(){dsOut。Clear();cmdOut=newSqlCommand("selectdistinctoutproID’项目编号',outproName'项目名称’,call'支出人员’,outmoney'支出金额’,outdata'支出日期'fromoutcome”,cn);da=newSqlDataAdapter(cmdOut);da。Fill(dsOut,"outcome");dataGridView1.DataSource=dsOut.Tables[”outcome”];}privatevoidForm5_Load(objectsender,EventArgse){displayIncome();displayOutcome();cn。Open();comboBox1.DataBindings.Add(”Text",dsIn。Tables[”income"],dsIn.Tables["income"].Columns["项目编号"].ColumnName);textBox1.DataBindings.Add("Text”,dsIn.Tables[”income"],dsIn.Tables["income"].Columns["项目名称"].ColumnName);comboBox2.DataBindings。Add("Text”,dsIn。Tables[”income”],dsIn.Tables[”income”].Columns["收入人员”].ColumnName);textBox2.DataBindings。Add("Text",dsIn.Tables[”income"],dsIn.Tables[”income"].Columns["收入金额"].ColumnName);dateTimePicker2。DataBindings.Add("Text”,dsIn。Tables["income”],dsIn。Tables["income”]。Columns["收入日期"].ColumnName);comboBox6。DataBindings.Add("Text”,dsOut.Tables["outcome"],dsOut.Tables["outcome"].Columns[”项目编号"].ColumnName);textBox4。DataBindings.Add("Text”,dsOut.Tables["outcome"],dsOut.Tables["outcome"]。Columns[”项目名称"]。ColumnName);comboBox5.DataBindings.Add("Text",dsOut。Tables[”outcome"],dsOut.Tables["outcome"]。Columns["支出人员"].ColumnName);textBox3.DataBindings.Add(”Text",dsOut.Tables["outcome”],dsOut。Tables["outcome”].Columns["支出金额”]。ColumnName);dateTimePicker1。DataBindings。Add(”Text",dsOut.Tables[”outcome”],dsOut.Tables["outcome"]。Columns["支出日期"].ColumnName);SqlCommandcmd=newSqlCommand(”selectdistinctcallfrommember”,cn);SqlDataReaderdr=cmd.ExecuteReader();while(dr。Read()){comboBox2.Items.Add(dr[0].ToString());comboBox5.Items.Add(dr[0]。ToString());}cn.Close();}收入项目管理界面主要代码:1、点击“添加“按钮时,触发button1_Click大事,向income表中添加一条信息,并在dataGridView中显示,代码如下:privatevoidbutton1_Click(objectsender,EventArgse)//添加收入项目{Stringstr=String。Format(”insertintoincomevalues('{0}',’{1}',’{2}’,{3},'{4}')",comboBox1。Text。Trim(),textBox1.Text.Trim(),comboBox2.Text。Trim(),textBox2.Text。Trim(),dateTimePicker2.Text.Trim());cmdIn=newSqlCommand(str,cn);try{cn.Open();cmdIn.ExecuteNonQuery();MessageBox.Show("添加成功!”);displayIncome();}catch(SqlExceptionex){MessageBox.Show(ex.Message);}finally{cn.Close();}}2、点击“修改“按钮时,触发button2_Click大事,修改income表中的某条信息,并在dataGridView中显示,代码如下:privatevoidbutton2_Click(objectsender,EventArgse)//修改收入项目{Stringstr=String。Format("updateincomesetinproName='”+textBox1。Text。Trim()+"',call='”+comboBox2。Text。Trim()+"’,inmoney='”+textBox2。Text.Trim()+"',indata='”+dateTimePicker2.Text.Trim()+"'whereinproID='”+comboBox1.Text.Trim()+”’”);cmdIn=newSqlCommand(str,cn);try{cn.Open();cmdIn。ExecuteNonQuery();MessageBox。Show("修改成功!");displayIncome();}catch(SqlExceptionex){MessageBox.Show(ex.Message);}finally{cn。Close();}}3、点击“删除“按钮时,触发button3_Click大事,从income表中删除一条信息,并在dataGridView中显示,代码如下:privatevoidbutton3_Click(objectsender,EventArgse)//删除收入项目{Stringstr=String.Format(”deletefromincomewhereinproID='"+comboBox1.Text.Trim()+”’");cmdIn=newSqlCommand(str,cn);try{cn.Open();cmdIn。ExecuteNonQuery();MessageBox。Show("删除成功!");displayIncome();}catch(SqlExceptionex){MessageBox.Show(ex。Message);}finally{cn.Close();}}支出项目管理界面主要代码:1、点击“添加“按钮时,触发button5_Click大事,向outcome表中添加一条信息,并在dataGridView中显示,代码如下:privatevoidbutton5_Click(objectsender,EventArgse)//添加支出项目{Stringstr=String.Format(”insertintooutcomevalues(’{0}',’{1}','{2}',{3},'{4}’)”,comboBox6.Text。Trim(),textBox4.Text.Trim(),comboBox5。Text.Trim(),textBox3.Text.Trim(),dateTimePicker1.Text.Trim());cmdOut=newSqlCommand(str,cn);try{cn。Open();cmdOut。ExecuteNonQuery();MessageBox.Show("添加成功!");displayOutcome();}catch(SqlExceptionex){MessageBox。Show(ex.Message);}finally{cn.Close();}}2、点击“修改“按钮时,触发button6_Click大事,修改outcome表中的某条信息,并在dataGridView中显示,代码如下:privatevoidbutton6_Click(objectsender,EventArgse)//修改支出项目{Stringstr=String。Format(”updateoutcomesetoutproName=’”+textBox4.Text。Trim()+"',call=’"+comboBox5。Text.Trim()+"’,outmoney=’"+textBox3.Text.Trim()+"’,outdata=’”+dateTimePicker1.Text.Trim()+"’whereoutproID='”+comboBox6.Text.Trim()+"'”);cmdOut=newSqlCommand(str,cn);try{cn.Open();cmdOut。ExecuteNonQuery();MessageBox.Show(”修改成功!”);displayOutcome();}catch(SqlExceptionex){MessageBox。Show(ex.Message);}finally{cn。Close();}}3、点击“删除“按钮时,触发button7_Click大事,从outcome表中删除一条信息,并在dataGridView中显示,代码如下:privatevoidbutton7_Click(objectsender,EventArgse)//删除支出项目{Stringstr=String.Format("deletefromoutcomewhereoutproID=’"+comboBox6。Text.Trim()+”’");cmdOut=newSqlCommand(str,cn);try{cn.Open();cmdOut.ExecuteNonQuery();MessageBox.Show(”删除成功!");displayOutcome();}catch(SqlExceptionex){MessageBox.Show(ex.Message);}finally{cn.Close();}}1.4.5储蓄管理1.4.5.1银行账户管理在主界面中选择【储蓄管理】|【银行账户管理】命令菜单,即可进入银行账户管理界面,如图1-9所示。图1-9银行账户管理界面银行账户管理界面主要代码:1、窗体加载时触发Form6_Load大事,通过该大事向dataGridView控件中填入bank表的内容,代码如下:voiddisplay(){ds。Clear();SqlCommandcmd=newSqlCommand("selectbankID’银行账号’,bankName'银行名称',call'开户人’,money'存款金额',data'开户日期’frombank",cn);SqlDataAdapterda=newSqlDataAdapter(cmd);da.Fill(ds,"bank”);dataGridView1。DataSource=ds。Tables[”bank"];}privatevoidForm6_Load(objectsender,EventArgse){display();cn。Open();comboBox1.DataBindings。Add(”Text”,ds。Tables["bank"],ds.Tables["bank”].Columns["银行账号"]。ColumnName);comboBox2.DataBindings。Add("Text",ds.Tables["bank”],ds.Tables[”bank"]。Columns["银行名称”]。ColumnName);comboBox3。DataBindings.Add(”Text”,ds。Tables["bank"],ds.Tables["bank”]。Columns["开户人"]。ColumnName);textBox1。DataBindings.Add("Text",ds。Tables["bank”],ds.Tables[”bank”].Columns[”存款金额"].ColumnName);dateTimePicker1.DataBindings.Add("Text”,ds.Tables["bank"],ds。Tables[”bank"]。Columns[”开户日期"]。ColumnName);SqlCommandcmd=newSqlCommand("selectdistinctcallfrommember”,cn);SqlDataReaderdr=cmd.ExecuteReader();while(dr。Read()){comboBox3.Items.Add(dr[0].ToString());}cn。Close();}2、点击“添加“按钮时,触发button1_Click大事,向bank表中添加一条信息,并在dataGridView中显示,代码如下:privatevoidbutton1_Click(objectsender,EventArgse)//添加记录{Stringstr=String。Format("insertintobankvalues('{0}','{1}’,’{2}',{3},'{4}’)",comboBox1.Text.Trim(),comboBox2.Text.Trim(),comboBox3.Text。Trim(),textBox1.Text.Trim(),dateTimePicker1。Text。Trim());SqlCommandcmd=newSqlCommand(str,cn);try{cn。Open();cmd.ExecuteNonQuery();MessageBox.Show(”添加成功!”);display();}catch(SqlExceptionex){MessageBox。Show(ex。Message);}finally{cn.Close();}}3、点击“修改“按钮时,触发button2_Click大事,修改bank表中的某条信息,并在dataGridView中显示,代码如下:privatevoidbutton2_Click(objectsender,EventArgse)//修改记录{Stringstr=String.Format("updatebanksetbankName=’”+comboBox2.Text。Trim()+"’,call='”+comboBox3。Text.Trim()+"',money=’"+textBox1。Text。Trim()+"’,data=’”+dateTimePicker1.Text.Trim()+"'wherebankID='"+comboBox1.Text。Trim()+"’”);SqlCommandcmd=newSqlCommand(str,cn);try{cn.Open();cmd.ExecuteNonQuery();MessageBox.Show("修改成功!");display();}catch(SqlExceptionex){MessageBox。Show(ex.Message);}finally{cn.Close();}}4、点击“删除“按钮时,触发button3_Click大事,从bank表中删除一条信息,并在dataGridView中显示,代码如下:privatevoidbutton3_Click(objectsender,EventArgse)//删除记录{Stringstr=String.Format("deletefrombankwherebankID='"+comboBox1.Text。Trim()+"’");SqlCommandcmd=newSqlCommand(str,cn);try{cn.Open();cmd.ExecuteNonQuery();MessageBox.Show("删除成功!”);display();}catch(SqlExceptionex){MessageBox。Show(ex.Message);}finally{cn。Close();}}1.4。6理财分析1.4。6.1查询明细在主界面中选择【理财分析】|【查询明细】命令菜单,即可进入查询明细管理界面,如图1—10所示.图1-10查询明细管理界面查询明细管理界面主要代码:1、窗体加载时触发Form7_Load大事,代码如下:privatevoidForm7_Load(objectsender,EventArgse){StringstrIn=”selectdistinctinproID'项目编号',inproName'项目名称',call'收入人员',inmoney'收入金额',indata'收入日期'fromincome”;StringstrOut="selectdistinctoutproID'项目编号',outproName'项目名称',call'支出人员’,outmoney'支出金额',outdata’支出日期'fromoutcome";displayIncome(strIn);displayOutcome(strOut);cn。Open();SqlCommandcmd=newSqlCommand("selectdistinctcallfrommember”,cn);SqlDataReaderdr=cmd.ExecuteReader();while(dr.Read()){comboBox1.Items.Add(dr[0].ToString());comboBox2。Items。Add(dr[0]。ToString());}cn.Close();}privatevoiddisplayIncome(Stringstr){dsIn。Clear();SqlCommandcmd=newSqlCommand(str,cn);SqlDataAdapterda=newSqlDataAdapter(cmd);da.Fill(dsIn,"income”);dataGridView1.DataSource=dsIn。Tables["income”];}privatevoiddisplayOutcome(Stringstr){dsOut.Clear();SqlCommandcmd=newSqlCommand(str,cn);SqlDataAdapterda=newSqlDataAdapter(cmd);da=newSqlDataAdapter(cmd);da。Fill(dsOut,”outcome");dataGridView2.DataSource=dsOut.Tables["outcome”];}2、点击“查询“按钮时,触发button1_Click大事,查询满意条件的记录,并在dataGridView中显示,代码如下:privatevoidbutton1_Click(objectsender,EventArgse)//日常收入查询{Stringstr=”selectdistinctinproID’项目编号’,inproName’项目名称',call’收入人员',inmoney'收入金额',indata'收入日期'fromincome";if(checkBox2.Checked){str=str+"wherecall='"+comboBox1.Text.Trim()+”'”;if(checkBox1。Checked){str=str+”andindatabetween’"+dateTimePicker1.Value.ToString("yyyy-MM-dd")+"’and'"+dateTimePicker2.Value.ToString("yyyy-MM—dd")+"’";}}elseif(checkBox1。Checked){str+=”whereindatabetween'"
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广州发展新能源集团股份有限公司校园招聘备考题库完整答案详解
- 2026重庆市九龙坡区统计局统计调查公益性岗位招聘1人备考题库带答案详解(完整版)
- 2026云南玉溪易门兴福村镇银行招聘工作人员3人备考题库参考答案详解
- 2026北京协和医院检验科王瑶团队合同制科研助理招聘1人备考题库含答案详解(新)
- 2026中国地质调查局烟台海岸带地质调查中心招聘备考题库(第二批)附答案详解(典型题)
- 2026广西柳州市融水苗族自治县汪洞招聘专职禁毒社工的3人备考题库及答案详解(有一套)
- 2026年湖南吉首市教育和体育局下属学校引进12名急需紧缺学科教师备考题库及答案详解1套
- 2026江西省江铜铜箔科技股份有限公司第二批次春季校园招聘10人备考题库有答案详解
- 2026浙江宁波市慈城镇人民政府招聘合同制人员11人备考题库及答案详解(易错题)
- 2026广东佛山顺德区职工解困基金会选聘专职秘书长人选的1人备考题库及答案详解(考点梳理)
- 抽水蓄能电站地下厂房岩锚梁开挖施工方案
- 电商直播运营总监KPI绩效考核指标表
- (高清版)JTGT 3374-2020 公路瓦斯隧道设计与施工技术规范
- 中华民族共同体概论课件专家版3第三讲 文明初现与中华民族起源(史前时期)
- 创业培训服务投标方案(技术方案)
- 高速公路机电系统管理与维护
- 初始过程能力分析报告(PPK)
- 04FD02防空地下室电气设备安装图集
- ZJ50D电动钻机绞车驱动控制系统设计1916
- GB/T 41791-2022塑料制品薄膜和薄片无取向聚对苯二甲酸乙二醇酯(PET)片材
- GB/T 26610.4-2022承压设备系统基于风险的检验实施导则第4部分:失效可能性定量分析方法
评论
0/150
提交评论