以往我们在关系数据库中建立树状结构的时候,通常使用ID+ParentID来实现两条纪录间的父子关系.但这种方式只能标示其相对位置.解决这类问题在SqlServer2005出现之前通常是采用游标来操作,但熟悉数据库内部机制的人都知道使用游标带来的性能问题和其他问题是比较严重的. 到了SqlServer2005下,可以选择用CTE来做递归查询,这种方式查询比较简练,但由于数据库内部是采用递归查询的方式,其效率依旧不高:为了能够实现既简练又高效的查询,通常的做法是增加冗余字段,比如增加一个"Path&…
概览: 新日期和时间数据类型 代表在层次结构中的位置 用于处理空间数据的两种模型 在全球经济环境下开展业务这一趋势越来越要求各公司使用新型的数据.应用程序以及复杂的计算.SQL Server 2008 内置的七种新数据类型 提供了处理和简化更复杂数据管理的方法. 日期和时间 使用旧的 datetime 数据类型时,SQL Server® 用户无法分别处理日期和时间信息.四种新数据类型(date.time.datetime2 和 datetimeoffset)则改变了这一状况,从而简化了日期和时间…
原文:SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. 2.具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验. 3.熟悉或了解Microsoft SQL Server 2008中的空间数据类型. 4.具备相应的GIS专业理论知识. 5.其他相关知识. SQL Serve…
T-SQL语言和SQLServer数据库中的数据通常需要定义一个数据类型,数据类型定义了对象可以容纳的数据的种类. 哪些对象需要数据类型 (1).表和视图的列:                 在定义表或视图时,其列需要定义数据类型. (2).存储过程的参数:                 在定义存储过程的T-SQL代码中定义参数的数据类型. (3).变量:                 如果在T-SQL中使用变量,需要定义数据类型. (4).带返回值的函数:                …
数据库设计简单地来讲,也就是设计表格的过程. 表格存储的数据是可以理解为一个二维表,由行和列组成. 原则上来讲,一个数据库只需要一个字段,一个数据类型就可以解决所有的问题,但是这样做并不明智,所以一般来讲,一个表格都是由多个字段来组成 ,每个字段也可以由不同的数据类型来组成. 常见的数据类型如下: 一.整数 bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字).存储大小为 8 个字节. i…
sql server 2008 数据库数据类型 一.数值型 int:整数类型,它的精度由执行机构确定.. smallint:短整数类型,它的精度由执行机构确定.. numeric(p,s):数值型,并给定精度p(总的有效位)或标度s(十进制小数点右边的位数). float:浮点型数值型,其精度等于或大于给定的精度p. eral:浮点数值型,它的精度由执行机构确定.. double:双精度浮点型,它的精度由执行机构确定. 二.字符类型 1.char:char存储定长数据很方便,CHAR字段上的索引…
在工作中,有时会遇到跨库传输数据的情况,其中 SQL Server 和 Oracle 之间的数据传输是比较常见的情况. 因为 SQL Server 和 Oracle 的数据类型有些差异,这就要求我们在数据传输时正确修改数据类型.那么 SQL Server 和 Oracle 数据类型对应关系是怎样的呢? 其实 SQL Server 提供了一张表供我们查询 SQL Server 和 Oracle 数据类型的对应关系. 查询方法很简单,在 SQL Server 数据库输入如下查询语句: SELECT…
原文:SSRS (SQL Server Report Service) 在IE9, IE10下显示不全的解决办法 在做项目的过程中遇到SSRS与IE9, IE10不兼容的情况,具体表现为报表页面在IE9 和 IE10下面只显示三分之一,靠左显示,下方有滚动条,右三分之二为空白.查看源代码后发现,上面一个<tr>里只有一个<td>,并colspan=3, 下面报表内容区域的<tr>有三个<td>但前两个是hidden的.最初是想把表格结构调整下,去掉前面hid…
在使用的时候发现一个问题,由于编程的习惯,当数据库中需要存储小数的时候,就想当然的使用了float类型,可结果太让人意外了. 数据库中存储了0.5没问题,当使用0.6的时候,得到的确是0.59999999999999998,使用1.6得到的是 1.6000000000000001,0.3得到的是0.29999999999999999,很奇怪啊! 在查找之后才明白原因,在SQL Server的帮助中这样描述: 小数数据Decimal 数据包含存储在最小有效数上的数据.在 SQL Server中,小…
1,标准SQL数据类型 BINARY 每个字符占一个字节 任何类型的数据都可存储在这种类型的字段中.不需数据转换(例如,转换到文本数据).数据输入二进制字段的方式决定了它的输出方式. BIT 1 个字节0 和 1 ,以及只包含这两个数值之一的字段. TINYINT 1 个字节 介于 0 到 255 之间的整型数. MONEY 8 个字节 介于 – 922,337,203,685,477.5808 到 922,337,203,685,477.5807 之间的符号整数. DATETIME 8 个字节…