资源描述:
《C# WinForm 数据库项目开发入门.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C#WinForm数据库项目开发入门我也是一个C#WinForm的初学者,对于文中所涉及的C#中控件或函数说明的不清楚,希望大家参考C#的帮助文档或在网上查找相关资料。在此谢谢大家了。文档以VS2010和SQLServer2008为例。在每个开发语言学习时,教程中都会有一个helloworld的简单程序来开始。但我不会应用这种模式,我们就以一个数据库项来学习C#和数据库。C#方面,即使你没有碰过C#也没有关系。因为在接下来我会C#的实例的方法来一般常用C#控件怎么用法,但不介绍控件属性等。当然我对C#也不是太熟悉,只能作简单的介绍。因
2、此需要大家谅解一下。有什么不明白的查找帮助和网上搜索相关资料。接下来的学习,只需要你有点SQL数据库的简单知识,能知道一些简单语法就行。我会用一个简单的实例来开始C#和数据库的开发。1我在学习C#的WinFrom的数据库编程时,我对这个设定了一个目标,这个目标是我需要使用哪些控件,综合这些控件我需要达到什么程度的功能,然后先到网站上去找相关的资料,网络上的资源也真丰富,琳琅满目,也要谢谢那些热心的网友上传的资料,我在这些资料中拼凑出了我所需要的信息和资源。所以我们先确定一个开发的实例。比如某个公司需要你为他们公司的产品开发一个库存管理
3、系统。拿到这个开发要求时,我们不能盲目的就去动手去做,而是先要分析一下他们的需求:a需要一个产品的信息表b需要一个库存表c有库存表,当然需要一个入库表和一个出库表。上面想的都数据库方便的信息,那么C#中我们要实现哪些功能呢:a要有登陆框b主界面c产品的信息的录入界面d入库信息的录入界面e出库信息的录入界面f库存查询的界面通过初步的判断之后,整理好这些需求之后,我们就要开始第一步开发了。2需求整理清楚,我们就要开始动手了。不过C#还没有登场。所以需要现在建立数据库和表。合理的建立表格是成功的一般,这样在C#中代码可以少写很多。我们建立的
4、MyTest的数据库,关于建立数据库网上有很多资料,只要找一下就行。接下来我们就开始建立表结构吧。--产品资料表t_MasterListCREATETABLEt_MasterList(tcodevarchar(20)NOTNULL,--产品的编码tnamevarchar(30),--产品的名称tspecvarchar(30),--产品的规格tqtyfloat,--产品的安全库存CONSTRAINTPK_t_MasterListPRIMARYKEYCLUSTERED(tcodeASC)WITH(PAD_INDEX=OFF,STATIST
5、ICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO--产品的库存表t_StockCREATETABLEt_Stock(tcodevarchar(20)NOTNULL,--产品的编码tqtyfloat,--产品的在库的数量CONSTRAINTPK_t_StockPRIMARYKEYCLUSTERED(tcodeASC)WITH(PAD_INDEX=OFF,STATISTICS_NOR
6、ECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO--产品的入出库表t_StockBill是主表CREATETABLEt_StockBill(tcodevarchar(20)NOTNULL,--单号tdatedatetime,--单据的日期tintint,--单据的类型:1:表示入库,-1表示出库。CONSTRAINTPK_t_StockBillPRIMARYKEYCLUSTERED(tcode
7、ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO--产品的入出库明细表t_StockBillEntryCREATETABLEt_StockBillEntry(tcodevarchar(20)NOTNULL,--单据的编号t_mCodevarchar(20)NOTNULL,--产品的编号tqtyfloat,--入出库的数量
8、CONSTRAINTPK_t_StockBillEntryPRIMARYKEYCLUSTERED(tcode,t_mCodeASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OF