如何设计数据库.doc
《如何设计数据库.doc》由会员分享,可在线阅读,更多相关《如何设计数据库.doc(9页珍藏版)》请在咨信网上搜索。
1、1 如何设计数据库答:存储信息的大小,每次扩容的大小,冗余2 几十上百万行,如何快速查询出表数据答:用分页存储过程/* 函数名称: GetRecordFromPage 函数功能: 获取指定页的数据 参数说明: tblName 包含数据的表名 fldName 关键字段名 PageSize 每页记录数 PageIndex 要获取的页码 OrderType 排序类型, 0 - 升序, 1 - 降序 strWhere 查询条件 (注意: 不要加 where)*/CREATE PROCEDURE GetRecordFromPage tblName varchar(255), - 表名 fldName v
2、archar(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 != 0begin set strTmp = (sel
3、ect max set strOrder = order by + fldName + ascendset strSQL = select top + str(PageSize) + * from + tblName + where + fldName + + strTmp + ( + fldName + ) from (select top + str(PageIndex-1)*PageSize) + + fldName + from + tblName + + strOrder + ) as tblTmp) + strOrderif strWhere != set strSQL = sel
4、ect top + str(PageSize) + * from + tblName + where + fldName + + strTmp + ( + fldName + ) from (select top + str(PageIndex-1)*PageSize) + + fldName + from + tblName + where + strWhere + + strOrder + ) as tblTmp) and + strWhere + + strOrderif PageIndex = 1begin set strTmp = if strWhere != set strTmp
5、= where ( + strWhere + ) set strSQL = select top + str(PageSize) + * from + tblName + + strTmp + + strOrderendexec (strSQL)GO3 SQL语句左联接与内连接的区别答:Inner Join 逻辑运算符返回满足第一个(顶端)输入与第二个(底端)输入联接的每一行。Left Outer Join 逻辑运算符返回每个满足第一个(顶端)输入与第二个(底端)输入的联接的行。它还返回任何在第二个输入中没有匹配行的第一个输入中的行。第二个输入中的非匹配行作为空值返回。4 A如何连接数据库答:
6、connection 连接数据库 Command执行数据库SQL或存储过错命令 DataAdapter 连接数据库,执行数据库SQL或存储过错命令,填充DataSet5 什么是事务?答:数据库事务是指作为单个逻辑工作单元执行的一系列操作。数据库事务的ACID属性事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性: 原子性事务必须是原子工作单元;对于其数据修改,要么全都执行,要
7、么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。如果系统只执行这些操作的一个子集,则可能会破坏事务的总体目标。原子性消除了系统处理操作子集的可能性。 一致性事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。某些维护一致性的责任由应用程序开发人员承担,他们必须确保应用程序已强制所有已知的完整性约束。例如,当开发用于转帐的应用程序时,应避免在转帐过程中任意移动小数点。 隔离性由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。
8、事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。当事务可序列化时将获得最高的隔离级别。在此级别上,从一组可并行执行的事务获得的结果与通过连续运行每个事务所获得的结果相同。由于高度隔离会限制可并行执行的事务数,所以一些应用程序降低隔离级别以换取更大的吞吐量。 持久性事务完成之后,它对于系统的影响是永久性的。该修改即使出现致命的系统故障也将一直保持。DBMS的责任和我们的任务企业级的数据库管理系统(DBMS)都有
9、责任提供一种保证事务的物理完整性的机制。就常用的SQL Server2000系统而言,它具备锁定设备隔离事务、记录设备保证事务持久性等机制。因此,我们不必关心数据库事务的物理完整性,而应该关注在什么情况下使用数据库事务、事务对性能的影响,如何使用事务等等。6 水晶报表实现的功能?如何实现?答:* 一套完整的Web报表制作解决方案,让您容易制作网络报表 * 功能强大的工具,可将报表制作功能与Web及Windows应用程序结合 * 可利用各种资料来源,建立简报品质的精良报告 * 与微软Office紧密结合的报表制作功能 * 快速的报表处理功能 * 可弹性地传送报表 * 与Crystal Repor
10、ts商业智能产品家族完全结合 从简单到复杂的报表,Crystal Reports 都可以协助您存取、分析、报告及分享数据,结合使用容易、具弹性、功能强大的特性,提供简报品质的完美报表。 功能: 使用各种资料来源制作报表 享用功能强大的设计与格式设定功能 结合具弹性的分析 最快的报表处理能力 灵活的报表传送作业 可扩充的Web报表制作 取得您所需要的功能强大、弹性高的报表制作工具,将精巧的报表的制作功能结合到您的Windows及Web应用程序。充分运用针对网站thin-wire环境设计的报表制作功能 支持应用程序的强大报表制作功能 享用前所未有的弹性与操控能力 完成应用程序资料的报表7 stri
11、ng = null 和string “”的区别答:前者没有分配内存控件,后着分配了8 存储过程和sql语句的优缺点答:存储过程的优缺点: 优点: 1.由于应用程序随着时间推移会不断更改,增删功能,TSQL过程代码会变得更复杂,StoredProcedure为封装此代码提供了一个替换位置。 2.执行计划(存储过程在首次运行时将被编译,这将产生一个执行计划 实际上是 Microsoft SQL Server为在存储过程中获取由 T-SQL 指定的结果而必须采取的步骤的记录。)缓存改善性能。 .但sql server新版本,执行计划已针对所有 T-SQL 批处理进行了缓存,而不管它们是否在存储过程中
12、,所以没比较优势了。 3.存储过程可以用于降低网络流量,存储过程代码直接存储于数据库中,所以不会产生大量T-sql语句的代码流量。 4.使用存储过程使您能够增强对执行计划的重复使用,由此可以通过使用远程过程调用 (RPC) 处理服务器上的存储过程而提高性能。RPC 封装参数和调用服务器端过程的方式使引擎能够轻松地找到匹配的执行计划,并只需插入更新的参数值。 5.可维护性高,更新存储过程通常比更改、测试以及重新部署程序集需要较少的时间和精力。 6.代码精简一致,一个存储过程可以用于应用程序代码的不同位置。 7.更好的版本控制,通过使用 Microsoft Visual SourceSafe 或某
13、个其他源代码控制工具,您可以轻松地恢复到或引用旧版本的存储过程。 8.增强安全性: a、通过向用户授予对存储过程(而不是基于表)的访问权限,它们可以提供对特定数据的访问; b、提高代码安全,防止 SQL注入(但未彻底解决,例如,将数据操作语言DML,附加到输入参数); c、SqlParameter 类指定存储过程参数的数据类型,作为深层次防御性策略的一部分,可以验证用户提供的值类型(但也不是万无一失,还是应该传递至数据库前得到附加验证)。 缺点: 1.如果更改范围大到需要对输入存储过程的参数进行更改,或者要更改由其返回的数据,则您仍需要更新程序集中的代码以添加参数、更新 GetValue()
14、调用,等等,这时候估计比较繁琐了。 2.可移植性差 由于存储过程将应用程序绑定到 SQL Server,因此使用存储过程封装业务逻辑将限制应用程序的可移植性。如果应用程序的可移植性在您的环境中非常重要,则将业务逻辑封装在不特定于 RDBMS 的中间层中可能是一个更佳的选择。Sql语句灵活,可移植性强,查询速度比存储过程慢些9 如何验证数据正确性?以E_mail的为例答:在RegularExpressionValidator验证控件中加入正则表达式:w+(-+.w+)*w+(-.w+)*.w+(-.w+)*10 什么是webservice,什么情况下使用,如何使用?答:现在我将列举三种情况,在这
15、三种情况下,你将会发现使用Webservice会带来极大的好处。此后,我还会举出不应该使用Webservice的一些情况。 跨越防火墙的通信 如果你的应用程序有成千上万的用户,而且他们都分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。那是因为客户端和服务器之间通常都会有防火墙或者代理服务器。在这种情况下,你想使用DCOM就不是那么简单了,而且,通常你也不愿意把你的客户端程序发布到如此庞大数量的每一个用户手中。于是,你最终选择了用浏览器作为客户端,写下一堆ASP页面,把应用程序的中间层暴露给最终用户。结果呢?运气好的话,只是开发难度大了一些,运气不好的话,就会得到一个根本无法维护
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 设计 数据库
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。