与数值有关的类型统称为数值类型。所有的数值都有精度,精度指的是有效数字位数。有的数值还有标度值,它用来指示小数点右边的最小有效数字位数。例如,数字1234.56的精度为6,标度值为2,可以定义为NUMERIC(6,2)。每一个数据库实现方法都有关于如何近似数值或者截短数值的规则。除了提供获取数值长 度和其它数值处理所需的属性外,SQL92提供了内建函数,如加、减、乘、除等。所有的数值类型之间都可以互相比较、互相赋值。尽管实现方法不同,但是它 们有一个的共同点,即它们的结果一般都保留最大精度。...详细
一般对于中文数据的索引,采用词组的首汉字拼音的首字母,在DB2中并没有提供相应的函数可以取得汉字拼音的首字母,我们可以利用数据库针对中文字符集的排序功能创建一个这样的函数。本文分析了这种函数的工作原理,给出了具体的实现方法。...详细
数据库是存储数据和执行大批量计算的场所,在数据库中使用一些简单的SQL命令,进行存储、查询、统计、以解决现实世界中的问题已经是屡见不鲜。随着数据量的大幅度增加和业务规则的日益复杂,越来越需要一种专门的方法来满足效率和准确性方面的要求。如何把解决问题的复杂算法转换为数据库能够执行的命令,也是数据库应用技术研究的一个方面。本文以MSSQL中的命令来介绍了算法的应用。...详细
最能为你提供帮助的诊断数据是Oracle的扩展SQL跟踪数据。扩展SQL跟踪文件按时间顺序显示了Oracle数据库内核在指定时间内所完成工作的逐条记录。收集扩展SQL跟踪数据几乎是免费的。最大的花销是存储每一个需要引起注意的跟踪文件所需磁盘空间(很少超过几兆字节)的费用。跟踪自己的代码。如果能访问程序的源代码,则打开其扩展SQL跟踪就非常容易。...详细
本文介绍了在Oracle中用SQL语句实现进制间互相转换的方法。...详细
作为一个Oracle专业人员,你应该知道在SQL语句第一次进入库缓存时可能存在重大的启动延迟。但是聪明的Oracle DBA和开发人员能够改变表的搜索限制参数或者使用ordered提示来手工指定表的连接顺序,从而显著地减少优化和执行新查询所需的时间。消耗在准备新的SQL语句的时间是Oracle SQL语句执行时间的最重要的组成部分。但是通过理解Oracle内部产生执行计划的机制,能够控制Oracle花费在评估连接顺序的时间数量,并且能在大体上提高查询性能。...详细
如果能访问程序的源代码,则打开其扩展SQL跟踪就非常容易。首先必须确保会话的TIMED_STATISTICS和MAX_DUMP_ FILE_SIZE参数设置正确。如果没有设置TIMED_STATISTICS=TRUE,则数据库内核将把0值而不是真正的持续时间发送到跟踪文件中。接下来是激活跟踪。有几种方法可以采用。过去的方法是使用ALTER SESSION命令。更好的方法是使用DBMS_SUPPORT包来激活扩展SQL跟踪。跟踪别人的代码。如果你想跟踪没有读/写权限的代码,则激活扩展SQL跟踪就有点麻烦了。...详细
SQL调整工具集(SQL Tuning Set,STS)是Oracle 10g的SQL Tuning Advisor特性的一个组成部分。每个调整工具集都包含一个或几个SQL语句,以及正确解释它们所需的上下文信息。SQL Tuning Advisor用一个调整工具集作为输入,检查其中的语句并为它们提出优化建议。Oracle 10g第二版(release 2)中增加了移动SQL Tuning Set的功能。使用一个中转表和DBMS_SQLTUNE类中的过程,你就可以从创建SQL Tuning Set的实例中将它们输出,然后输入到一个测试实例中进行分析。 ...详细
在诊断数据库系统性能的过程中,总会涉及到跟踪效率低下的SQL语句,本文总结了跟踪SQL语句的方法。...详细
SQL服务器有两种基本管理方法:动态分配和静态分配,用以控制程序可使用的内存数量。动态 分配允许管理员声明一块内存的大小;考虑到它的实际使用,SQL服务器可以分配给其需要占用的内存的最大值,并且在没有使用内存的情况下将其释 放。静态分配则是创建一块固定的内存空间,提供给SQL Server使用不再进行分配。在默认情况下,SQL Server被设置成动态分配,分配给其正在运行的计算机内所有可用的物理内存。许多管理员注意到SQL Server内存随时间的流逝被逐渐消耗殆尽时,其原因很可能是故障或是内存漏洞,但这个程序正是被设计成这样的。 ...详细
在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。本文介绍了使用SQL的全局临时表防止用户重复登录。...详细
如果你在做网站的时候,无法正确执行sql语句,response后,发现sql语句里面的中文字段都成了乱码。本文介绍了这个问题的解决办法。...详细
学习过Access的读者可能知道,access设计视图有一个很不错的功能-----设计列的注释,这可以让设计者清楚地看到每个列的意义。一般的SQL Server建表时没有这个功能,但是他有扩展属性,这个功能也不错,可以把注释写到这里面,然后把相应的结果作为rs返回到页面进行应用。这种功能一般在动态显示数据库的table的列信息时比较常用。本文介绍了利用SQL扩展属性显示注释的方法。...详细
本文举例介绍了ORACLE中用一条SQL实现其它进制到十进制的转换。...详细
以有意义的方式安排数据可能是一种挑战。有时您只需进行简单分类。通常您必须进行更多处理——进行分组以利于分析与总计。可喜的是SQL提供了大量用于分类、分组和总计的子句及运算符。本文的建议将有助于您了解何时进行分类、何时分组、何时及如何进行总计。...详细
本文逐个分析动态SQL四种类型的语句格式。...详细
本文介绍了在SQL中解决松散关系的方法。...详细
本文分析了几种实现分页的方法,介绍了一个通过标准的SQL语句来得到符合条件的数据。...详细
SQL Server之所以不允许在视图定义中使用ORDER BY子句是为了遵守ANSI SQL-92标准。因为对该标准的原理分析需要对结构化查询语言(SQL)的底层结构和它所基于的数学理论进行讨论,我们不能在这里对它进行充分的解释。但是,如果你需要在视图中指定ORDER BY子句,文中介绍了可以考虑使用的方法。...详细
优化器在形成执行计划时需要做的一个重要选择是如何从数据库查询出需要的数据。对于SQL语句存取的任何表中的任何行,可能存在许多存取路径(存取方法),通过它们可以定位和查询出需要的数据。优化器选择其中自认为是最优化的路径。在物理层,oracle读取数据,一次读取的最小单位为数据库块(由多个连续的操作系统块组成),一次读取的最大值由操作系统一次I/O的最大值与multiblock参数共同决定,所以即使只需要一行数据,也是将该行所在的数据库块读入内存。本文介绍了逻辑上oracle访问数据的存取方法。...详细