1 如何设计数据库。
答:存储信息的大小,每次扩容的大小,冗余。
2 几十上百万行,如何快速查询出表数据。
答:用分页存储过程。
函数名称: getrecordfrompage
函数功能: 获取指定页的数据。
参数说明: @tblname 包含数据的表名。
fldname 关键字段名。
pagesize 每页记录数。
pageindex 要获取的页码。
ordertype 排序类型, 0 - 升序, 1 - 降序。
strwhere 查询条件 (注意: 不要加 where)
create procedure getrecordfrompage
@tblname varchar(255表名。
@fldname varchar(255字段名。
@pagesize int = 10页尺寸。
@pageindex int = 1页码。
@ordertype bit = 0设置排序类型, 非 0 值则降序。
@strwhere varchar(2000查询条件 (注意: 不要加 where)
asdeclare @strsql varchar(6000主语句。
declare @strtmp varchar(1000临时变量。
declare @strorder varchar(500排序类型。
if @ordertype !=0
beginset @strtmp = select min'
set @strorder = order by ['fldname + desc'
endelse
beginset @strtmp = select max'
set @strorder = order by ['fldname +'asc'
endset @strsql = select top ' str(@pagesize) +from ['
+ @tblname + where ['fldnamestrtmp +
+ @fldname + from (select top ' str((@pageindex-1)*@pagesize) +
+ @fldname + from ['tblnamestrorder + as tbltmp)'
+ @strorder
if @strwhere !=
set @strsql = select top ' str(@pagesize) +from ['
tblname + where ['fldnamestrtmp +
fldname + from (select top ' str((@pageindex-1)*@pagesize) +
fldname + from ['tblname + where ' strwhere +
strorder + as tbltmp) and ' strwherestrorder
if @pageindex = 1
beginset @strtmp =
if @strwhere !=
set @strtmp = where ('strwhere +
set @strsql = select top ' str(@pagesize) +from ['
tblnamestrtmpstrorder
endexec (@strsql)
go3 sql语句左联接与内连接的区别。
答:inner join 逻辑运算符返回满足第一个(顶端)输入与第二个(底端)输入联接的每一行。
left outer join 逻辑运算符返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行。它还返回任何在第二个输入中没有匹配行的第一个输入中的行。第二个输入中的非匹配行作为空值返回。
4 如何连接数据库。
答: connection 连接数据库。
command 执行数据库sql或存储过错命令。
dataadapter 连接数据库,执行数据库sql或存储过错命令,填充dataset
5 什么是事务?
答:数据库事务是指作为单个逻辑工作单元执行的一系列操作。
数据库事务的acid属性。
事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的acid(原子性、一致性、隔离性和持久性)属性:
· 原子性。
事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。如果系统只执行这些操作的一个子集,则可能会破坏事务的总体目标。
原子性消除了系统处理操作子集的可能性。
· 一致性。
事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 b 树索引或双向链表)都必须是正确的。
某些维护一致性的责任由应用程序开发人员承担,他们必须确保应用程序已强制所有已知的完整性约束。例如,当开发用于转帐的应用程序时,应避免在转帐过程中任意移动小数点。
· 隔离性。
由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。
当事务可序列化时将获得最高的隔离级别。在此级别上,从一组可并行执行的事务获得的结果与通过连续运行每个事务所获得的结果相同。由于高度隔离会限制可并行执行的事务数,所以一些应用程序降低隔离级别以换取更大的吞吐量。
· 持久性。
事务完成之后,它对于系统的影响是永久性的。该修改即使出现致命的系统故障也将一直保持。
dbms的责任和我们的任务。
企业级的数据库管理系统(dbms)都有责任提供一种保证事务的物理完整性的机制。就常用的sql server2000系统而言,它具备锁定设备隔离事务、记录设备保证事务持久性等机制。因此,我们不必关心数据库事务的物理完整性,而应该关注在什么情况下使用数据库事务、事务对性能的影响,如何使用事务等等。
6 水晶报表实现的功能?如何实现?
答: 一套完整的web报表制作解决方案,让您容易制作网络报表
功能强大的工具,可将报表制作功能与web及windows应用程序结合
可利用各种资料**,建立简报品质的精良报告
与微软office紧密结合的报表制作功能
快速的报表处理功能
可弹性地传送报表
与crystal reports商业智能产品家族完全结合
从简单到复杂的报表,crystal reports 都可以协助您存取、分析、报告及分享数据,结合使用容易、具弹性、功能强大的特性,提供简报品质的完美报表。
功能:] 使用各种资料**制作报表
享用功能强大的设计与格式设定功能
结合具弹性的分析
最快的报表处理能力
灵活的报表传送作业
可扩充的web报表制作
取得您所需要的功能强大、弹性高的报表制作工具,将精巧的报表的制作功能结合到您的windows及web应用程序。充分运用针对**thin-wire环境设计的报表制作功能
支持应用程序的强大报表制作功能
享用前所未有的弹性与操控能力
完成应用程序资料的报表。
7 string = null 和string = 的区别。
答:前者没有分配内存控件,后着分配了。
8 存储过程和sql语句的优缺点。
答:存储过程的优缺点:
优点: 1.由于应用程序随着时间推移会不断更改,增删功能,t-sql过程**会变得更复杂,storedprocedure为封装此**提供了一个替换位置。
2.执行计划(存储过程在首次运行时将被编译,这将产生一个执行计划-- 实际上是 microsoft sql server为在存储过程中获取由 t-sql 指定的结果而必须采取的步骤的记录。)缓存改善性能。
...但sql server新版本,执行计划已针对所有 t-sql 批处理进行了缓存,而不管它们是否在存储过程中,所以没比较优势了。
3.存储过程可以用于降低网络流量,存储过程**直接存储于数据库中,所以不会产生大量t-sql语句的**流量。
4.使用存储过程使您能够增强对执行计划的重复使用,由此可以通过使用远程过程调用 (rpc) 处理服务器上的存储过程而提高性能。rpc 封装参数和调用服务器端过程的方式使引擎能够轻松地找到匹配的执行计划,并只需插入更新的参数值。
SQL笔试题笔试题
家庭住址,联系 create table stu 学号int 姓名varchar 8 年龄int,性别varchar 4 家庭地址varchar 50 联系 int 历varchar 6 3 修改学生表的结构,删除一列信息,家庭住址alter table stu drop column家庭地址4 向...
笔试题 笔试题目大全
一 选择题。选择题有单项选择 双项选择和多项选择三种类型,多项选择题是选择题中难度最大的一种,它并不指定正确答案的个数,可能只有一个是正确的,也可能两个是正确的,也可能全部是正确的。二 判断题。这类试题看似简单,但如思路不对,同样会造成错误。三 填空题。填空题的答案是唯一的,要用简明 准确 完整的语...
AS笔试题
测试题。考生 rita,cathy,监考 jerry,jack,ludy 时间 2009 10 21 11 00 19 00 制度 在考试前,切断考生的网络,在考试过程中,不允许与他人讨论及向他人请教。1 写一段 判断一个数是否为素数 只有1和它自己两个因数的数为素数 2 求一个数 x 为奇数还是偶...