有关VS2010数据库项目开发的总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
有关学习VS2010数据库项目开发的总结其实我们这个学期所学的主要是一个从两层架构开发到简单的三层架构开发的过程,前面老师所说的都是为了后面的三层架构做准备,可以说两层开发是三层架构的基础吧。
一个完整的项目开发的流程:(SQL+VS)
1.数据库设计(SQL server2008)
(1)数据库分析
(2)数据库结构设计
(3)数据库和数据表的创建
(4)根据系统需要创建存储过程
2.系统设计(VS2010)
(1)界面设计(窗体+控件)
(2)创建相关类文件(编写相关功能代码)
(3)系统打包部署生成
前面基础知识的总结:1.用 连接数据库
2.用 查询和操作数据库2.1 使用DataReader 对象检索数据
2.2 使用Command 对象操作数据
3. DataSet 数据集的用法
4.DataGridView的用法
5.带参数的存储过程调用
6.数据类型转换
显示转换
隐式转换
用户自定义转换
(1) 隐式转换:一般是低类型向高类型转化,能够保证值不发生变化。
隐式数值转换:如数值型之间从低数值范围向高范围值转换
隐式枚举转换:隐式枚举转换允许将十进制整数0 转换为任何枚举类型。
隐式引用转换
派生类向基类转换
隐式引用转换是指一类引用类型之间的转换,这种转换总是可以成功,因此不需要在运行时进行任何检查。
装箱转换
装箱转换允许将值类型隐式转换为引用类型。
(2) 显示转换:也称强制类型转换。不能保证数据的正确性。
(type)(表达式)
用System.Convert类:值类型。将一个基本数据类型转换为另一个基本数据类型。
使用Parse方法
大部份预定义值类型都有这个静态方法,用来将相应的文本转化为相应的值类型。
Convert.ToInt32()与int.Parse()的区别
(1)这两个方法的最大不同是它们对null值的处理方法:
Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。没搞清楚Convert.ToInt32和int.Parse()的细细微区别时千万别乱用,否则可能会产生无法预料的结果,举例来说:假如从url中取一个参数page的值,我们知道这个值是一个int,所
以即可以用Convert.ToInt32(Request.QueryString["page"]),也可以
用,int.Parse(Request.QueryString["page"]),但是如果page这个参数在url中不存在,那么前者将返回0,0可能是一个有效的值,所以你不知道url中原来根本就没有这个参数而继续进行下一下的处理,这就可能产生意想不到的效果,而用后一种办法的话没有page这个参数会抛出异常,我们可以捕获异常然后再做相应的处理,比如提示用户缺少参数,而不是把参数值当做0来处理。
(2)还有一点区别就是
a. Convert.ToInt32(double value)
如果value 为两个整数中间的数字,则返回二者中的偶数;即 3.5转换为4,4.5 转换为4,而5.5 转换为6。不过4.6可以转换为5,4.4转换为4
b. int.Parse("4.5")
直接报错:"输入字符串的格式不正确".
c. int(4.6) = 4
Int转化其他数值类型为Int时没有四舍五入,强制转换
其它转换用运算符
as
as 运算符用于执行引用类型的显式类型转换。如果要转换的类型与指定类型兼容,转换就会成功;如果类型不兼容,则返回null。
表达式as 类型
as 运算符类似于类型转换,所不同的是,当转换失败时,as 运算符将返回null,而不是引发异常。
示例:
object o1=”SomeString”;
object o2=5;
string s1=o1 as string; //类型兼容s1=”SomeString”
string s2=o2 as string; //s2=null
is
is 运算符用于检查对象的类型是否与给定类型兼容(对象是该类型,或是派生于该类型)。
表达式is 类型
i
示例:
int i=10;
if ( i is object) //true
{}
sizeof
sizeof 运算符用于获得值类型的大小(以字节为单位)。
sizeof(type)
sizeof 运算符仅适用于值类型,而不适用于引用类型。
sizeof 运算符仅可用于unsafe模式。
示例:
unsafe
{
Console.WriteLine(“{0}”,sizeof(int));
}
Convert.ToInt32()与int.Parse()的区别
(1)这两个方法的最大不同是它们对null值的处理方法:
Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。没搞清楚Convert.ToInt32和int.Parse()的细细微区别时千万别乱用,否则可能会产生无法预料的结果,举例来说:假如从url中取一个参数page的值,我们知道这个值是一个int,所以即可以用Convert.ToInt32(Request.QueryString["page"]),也可以
用,int.Parse(Request.QueryString["page"]),但是如果page这个参数在url中不存在,