预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共17页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

汇总最全的C#.NET(数据库.net其它)⾯试题及参考答案⼀、数据库篇1.维护数据库的完整性、⼀致性、你喜欢⽤触发器还是⾃写业务逻辑?为什么?答:尽可能⽤约束(包括CHECK、主键、唯⼀键、外键、⾮空字段)实现,这种⽅式的效率最好;其次⽤触发器,这种⽅式可以保证⽆论何种业务系统访问数据库都能维持数据库的完整性、⼀致性;最后再考虑⽤⾃写业务逻辑实现,但这种⽅式效率最低、编程最复杂,当为下下之策。2.什么是事务?什么是锁?请说出sqlserver中锁的隔离级别有哪些,默认是哪⼀种?答:事务是指⼀个⼯作单元,它包含了⼀组数据操作命令,并且所有的命令作为⼀个整体⼀起向系统提交或撤消请求操作,即这组命令要么都执⾏,要么都不执⾏。锁是在多⽤户环境中对数据的访问的限制。SqlServer⾃动锁定特定记录、字段或⽂件,防⽌⽤户访问,以维护数据安全或防⽌并发数据操作问题,锁可以保证事务的完整性和并发性。3.什么是索引,有什么优点?使⽤索引需要注意些什么?答:索引与书的⽬录类似,可以快速定位要查找的数据所有位置,索引使数据库程序⽆需扫描整个表,就可以在其中找到所需要的数据,索引包含了⼀个表中包含值的列表,其中包含了各个值的⾏所存储的位置,索引可以是单个或⼀组列,索引提供的表中数据的逻辑位置,合理划分索引能够⼤⼤提⾼数据库性能。索引需要注意:加索引的列⼀定要是经常使⽤来条件筛选的列,并且where中要避免对有索引的列进⾏计算,索引并不是越多越好,索引会占⽤更多的存储空间,也会对insert、update、delete这些操作有⼀定的性能影响。4.视图是什么?游标是什么?答:视图是⼀种虚拟表,虚拟表具有和物理表相同的功能,可以对虚拟表进⾏增该查操作;视图通常是⼀个或多个表的⾏或列的⼦集;视图的结果更容易理解(修改视图对基表不影响),获取数据更容易(相⽐多表查询更⽅便),限制数据检索(⽐如需要隐藏某些⾏或列),维护更⽅便。游标对查询出来的结果集作为⼀个单元来有效的处理,游标可以定位在结果集的特定⾏、从结果集的当前位置检索⼀⾏或多⾏、可以对结果集中当前位置进⾏修改、5.什么是存储过程?有什么优点?答:存储过程是⼀组予编译的SQL语句它的优点:1.允许模块化程序设计,就是说只需要创建⼀次过程,以后在程序中就可以调⽤该过程任意次。2.允许更快执⾏,如果某操作需要执⾏⼤量SQL语句或重复执⾏,存储过程⽐SQL语句执⾏的要快。3.减少⽹络流量,例如⼀个需要数百⾏的SQL代码的操作有⼀条执⾏语句完成,不需要在⽹络中发送数百⾏代码。4.更好的安全机制,对于没有权限执⾏存储过程的⽤户,也可授权他们执⾏存储过程。6.什么是触发器?有什么优点?答:触发器是⼀种特殊类型的存储过程,出发器主要通过事件触发⽽被执⾏的,触发器的优点:1.强化约束,触发器能够提供⽐CHECK约束;2.跟踪变化,触发器可以跟踪数据库内的操作,从⽽不允许未经允许许可的更新和变化;3.联级运算,⽐如某个表上的触发器中包含对另⼀个表的数据操作,⽽该操作⼜导致该表上的触发器被触发7、说⼀说储过程和触发器和优点和缺点优点:1、预编译,已优化,效率较⾼。避免了SQL语句在⽹络传输然后再解释的低效率。2、存储过程可以重复使⽤,减少开发⼈员的⼯作量。3、业务逻辑封装性好,修改⽅便。4、安全。不会有SQL语句注⼊问题存在。缺点:1、可移植性是存储过程和触发器最⼤的缺点。2、占⽤服务器端太多的资源,对服务器造成很⼤的压⼒3、不能做DDL。4、触发器排错困难,⽽且数据容易造成不⼀致,后期维护不⽅便。8、T-SQL中isnull和null的区别?答:isnull和null区别相当于"是空盒⼦"和"空盒⼦"的区别9、写出⼀条Sql语句:取出表A中第31到第40记录(SQLServer,以⾃动增长的ID作为主键,注意:ID可能不是连续的。答:解1:selecttop10*fromAwhereidnotin(selecttop30idfromA)解2:selecttop10*fromAwhereid>(selectmax(id)from(selecttop30idfromA)asA)解3:SELECT*FROM(SELECT*,ROW_NUMBER()over(ORDERBYID)ASrownumFROMA)tWHEREt.rownumBETWEEN31AND40⼆、.NET篇1.什么是装箱和拆箱?什么是重载?答:装箱就是把值类型转成引⽤类型,拆箱相反把引⽤转换成值类型。重载就是指⼀个⽅法名相同,参数个数或参数的类型不相同,返回值可以相同的⽅法。2.简单介绍下ADO.NET和ADO主要有什么改进?答:ADO以Recordset存储,⽽ADO.NET则以DataSet表⽰,ADO.NET提供了数据集和数据适配器,有利于实现分布式