资源描述:
《使用ado操作sql server数据库的数据处理方法探讨》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、使用ADO操作SQLServer数据库的数据处理方法探讨___________________________________________________________________…裒甩●一譬曩密囊使用ADO操作SQLServer数据库的数据处理方法探讨,昊淑惠郑维智摘要长文以精心帝l作的菜品表为例,总结Vc++中使用ADO访问SQLServer数据库时.各种数据的处理办法关键词表达数据,数据类型的转换一,前言visualC++开发实用数据库成川程序最广泛的疗法是利用ADO.1rti这种打法的后台数据库常常采用SQLServer在使用ADO开发SQLServer数据库
2、应用序时.需要用正确的方法女表达和转换实际应J=}=l中干差万别,形态各异的各种数据本文根据作者多年的数据库开发经验,通过将最常使用的数据分门别类,探讨数据席应用程乎歼发过程巾可能涉及到的数据处理方法.二,使用ADO操作SQLServer数据库的数据处理方法在使用ADO编写应用程序访问SQLServer数据库时.通常有以下几个步骤:●创建SQLServer表●建立应用程序框架●编写访问数据库的类●为数据库袭创建类●编写实现程序功能的其他代码在这些步骤中,详细仑述数据处理.I创建SQLServer表时数据的处理为了应对现实生活中种类繁多的数据,SOLServer不但提供20多种数
3、据类型以供选择还允许用户自定义数据类型.但对于一个一般的应用程序.将现实生活的数据表达在SQLServer表中.四个数据类别(整数类小数类,字符类和日期类)即可满足最基本的需求图1所示为现实生活中用于描述菜品的表,表中的数据在sQI_Server中用上述四种形式完全可以表达:第①训,第④列,第⑤列,第c6】列部属于蝼数热,第②,③州K-符类,筇?∞列是小数类.第,ij)列和第@J列都足I_1期类.它盯』在S4kJL48.-20囊0囊5.拄11矗与?I_Server叶]表的I殳计如巨I2H所示圈I现实生活中描述菜品的表梏圈2菜晶裹的衰现形式稍做分析疑问便产生了:用于记录编号的第①
4、列和用于描述数盈的第④列是整数型.数据类型定为inI型.这似乎没有任何问题但用于描述菜品类别和单位的笫⑤列,第⑥列也用胜敬型米描述好象有些雎夷所思.实际上.用整数的原因是因为第一列的内容足从另一张表Type巾来(如降I2I)所示),在DA1'^B^SE数据库中只需存储拭对应的编号或1或2或3即可找到对应的菜品类别而第⑥利用tinyint则是因为菜品单位是很有限的几个.征数据库t…I司样可以只存储其对应的编号即可.它在应用程序中是用组合框米选择(如期2c所示).尽管这几列都用整数型来描述.但堤然,它们在应用程市的处理是不一样的.所以将它们每项独列出,第②列菜品编号和第③列菜品名称
5、用varchar型以及笫⑥列莱品价格用d~cimul碰来描述都无祷解释.但第⑧列和第⑨_州明明是期型.用vl盯型来描述就疆褂有些不可思议,这是因为在操作数据库时,用宁符型方便些这电还有一十问题.那就是,既然⑧,⑨两列都袅示H期.为何姆选一个.以使文章显然精干呢?原因是这两个口期在对话框中的表现形式不一样.其转换代码d王不一样2.在应用程序?LI为数据库表创建类时数据的处理在稍大规模的虚用程序中.应该为每一个sqt.Server表创建一个粪.这样可使程序结构清晰.易读易懂.电便于以后程序的移植.为数据库表创建类的步骤如下:①添加一个新类CUaers.注意将恢类的类型(cJ抽sty
6、pe)没置为一般类(GenericClass),而不是瞅认的MFCC】H*s②在Usersh巾为袭巾的每?个字段定义-个类型相近的私有成员变量,L述菜品裘的私有成员变量是这样定义的:CStringDInnefld.DinnorNsmsintDin呻rNum.DnnerTvpe.DinnerUnit;l,"舶口狮l1e∞;..,?一i^q,en咽l削Dl岫Po~e;一.-:I,细心的读者可能会发现,表中共有九个字段.但这里只定义了八个变量.还有一个用于记录编号的字段Id没有定义,这是为什么呢.原因是在SQLServer中设计字段Id时.已将其设置为"是"标识(瞅认为"番").并且
7、设置了标识种子为1,标识增量也为1(如图2n所示),对每条记录.$QLServer都会自动增加记录编号,因此,在应用程序中.诸如此类的整数型变量可以不必理会.观察这些私有成员变量和SQLServer檠品表的设计会发现这样一个转换原则sQLServer中数据类型散据表类中私有成员变量数据类型inttinyintjnIvareh~.rCStrlngdoeimalfloal(嘴)③在构造函数中韧始化这些变量.④添加得到和设置上述私有成员变量的public型成员函数编写这类函数非常简单.需在取得变量