当前位置:首页 » 编程语言 » sql网址的数据类型
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql网址的数据类型

发布时间: 2023-02-05 17:55:22

sql数据类型有哪些

SQL数据类型有以下这些:

1、二进制数据类型。

二进制数据包括 Binary、Varbinary 和 Image

Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。

Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储空间的大小是 n + 4 个字节。

Varbinary[(n)] 是 n 位变长度的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储空间的大小是 n + 4个字节,不是n 个字节。

2、字符数据类型。

字符数据类型包括char、varchar和text。

字符数据是由字母、符号和数字的任意组合组成的数据。

varchar是可变长度字符数据,其长度不超过8kb。char是最大长度为8kb的固定长度字符数据。超过8kb的ASCII数据可以使用文本数据类型存储。

3、Unicode 数据类型。

Unicode数据类型包括nchar、nvarchar和ntext。

在Microsoft SQL Server中,传统的非Unicode数据类型允许使用由特定字符集定义的字符。在安装SQL Server期间,允许选择字符集。

在Unicode标准中,包含由各种字符集定义的所有字符。使用Unicode数据类型占用的空间是使用非Unicode数据类型的两倍。

4、日期和时间数据类型。

日期和时间数据类型包括 Datetime 和 Smalldatetime两种类型。

日期和时间数据类型由有效的日期和时间组成。

例如,有效的日期和时间数据包括“4/01/98 12:15:00:00:00 PM”和“1:28:29:15:01AM 8/17/98”。

前一个数据类型是日期在前,时间在后。后一个数据类型是时间在前,日期在后。

在 Microsoft SQL Server中,日期和时间数据类型包括Datetime 和 Smalldatetime 两种类型时,所存储的日期范围是从 1753 年 1 月 1 日开始,到9999 年12 月 31 日结束(每一个值要求 8 个存储字节)。

5、数字数据类型。

数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点)和整数。

整数由正整数和负整数组成,如39、25、0-2和33967。在Microsoft SQL Server中,存储在整数中的数据类型是int、smallint和tinyint。

int数据类型存储的数据多于smallint数据类型,而smallint数据类型存储的数据多于tinyint数据类型。

使用int数据类型存储数据的范围从-2 147 483 648到2 147 483 647(每个值需要四个字节的存储空间)。

6、货币数据类型。

在 Microsoft SQL Server 中,货币数据的数据类型是Money 和 Smallmoney

Money数据类型要求 8 个存储字节,Smallmoney 数据类型要求 4 个存储字节。

Ⅱ SQL数据类型!

SQL字符类型介绍
一,名词定义
char为 定长字符型,如char(10),你实际数据是‘hello’,这时Sql Server 会自动补充空格,填满10位。varchar:可变长字符,没有上述问题,是多长就保存多长的数据。另外, char 和 varchar 在存储数据时,每个英文字符和数字都占一个字节,而一个中文的字符会占两个字节.

nchar 与 nvarchar 的用法基本相同,只不过在存储数据时采用的是 Unicode元码, 一个英文字符和一个中文字符所占的空间是相同的.都是两个字节.

二、名词解释
1、当使用非unicode时慎用以下这种查询:
select f from t where f = N’xx’
原因:无法利用到索引,因为数据库会将f先转换到unicode再和N’xx’比较

2、char 和相同长度的varchar处理速度差不多(后面还有说明)

3、varchar的长度不会影响处理速度(看后面解释)

4、索引中列总长度最多支持总为900字节,所以长度大于900的varchar、char和大于450的nvarchar,nchar将无法创建索引

5、text、ntext上是无法创建索引的

6、O/R Mapping中对应实体的属性类型一般是以string居多,用char[]的非常少,所以如果按mapping的合理性来说,可变长度的类型更加吻合

7、一般基础资料表中的name在实际查询中基本上全部是使用like ‘%xx%’这种方式,而这种方式是无法利用索引的,所以如果对于此种字段,索引建了也白建

8、其它一些像remark的字段则是根本不需要查询的,所以不需要索引

9、varchar的存放和string是一样原理的,即length {block}这种方式,所以varchar的长度和它实际占用空间是无关的

10、对于固定长度的字段,是需要额外空间来存放NULL标识的,所以如果一个char字段中出现非常多的NULL,那么很不幸,你的占用空间比没有NULL的大,这时候,你可以使用特殊标识来存放,如:’NV’

11、同上,所以对于这种NULL查询,索引是无法生效的,假如你使用了NULL标识替代的话,那么恭喜你,你可以利用到索引了

12、char和varchar的比较成本是一样的,现在关键就看它们的索引查找的成本了,因为查找策略都一样,因此应该比较谁占用空间小。在存放相同数量的字符情况下,如果数量小,那么char占用长度是小于varchar的,但如果数量稍大,则varchar完全可能小于char,而且要看实际填充数值的充实度,比如说varchar(3)和char(3),那么理论上应该是char快了,但如果是char(10)和varchar(10),充实度只有30%的情况下,理论上就应该是varchar快了。因为varchar需要额外空间存放块长度,所以只要length(1-fillfactor)大于这个存放空间(好像是2字节),那么它就会比相同长度的char快了。

13、nvarchar比varchar要慢上一些,而且对于非unicode字符它会占用双倍的空间,那么这么一种类型推出来是为什么呢?对,就是为了国际化,对于unicode类型的数据,排序规则对它们是不起作用的,而非unicode字符在处理不同语言的数据时,必须指定排序规则才能正常工作,所以n类型就这么一点好处。

三、名词总结
1、如果数据量非常大,又能100%确定长度且保存只是ansi字符,那么char
2、能确定长度又不一定是ansi字符或者,那么用nchar;
3、不确定长度,要查询且希望利用索引的话,用nvarchar类型吧,将它们设到400;
4、不查询的话没什么好说的,用nvarchar(4000)
5、性格豪爽的可以只用3和4,偶尔用用1,毕竟这是一种额外说明,等于告诉别人说,我一定需要长度为X位的数据
(这些字符型在网上都能搜索到的,搜搜看那,给你几个网址:

http://blog1.poco.cn/myBlogDetail.htx&id=1619242&userid=40517719&pri=&n=0
http://www.w3school.com.cn/sql/sql_syntax.asp

Ⅲ SQL 数据库的类型有哪些

SQL 数据库分为:系统数据类型和用户自定义类型
系统数据类型:整形(int\smallint\tinyint)\浮点数据(real\decimal和numeric)\字符(char\varchar\nchar\nvarchar)\日期和时间数据类型(datetime\smalldatetime)\文本和图形数据类型(text\ntext\image)\货币数据类型(money\smallmoney)\位数据类型\二进制数据类型(binary\varbinary)\特殊(timestamp\uniqueidentifier)\新增数据(bigint\sql_varant\table)

Ⅳ 什么是存储在SQL服务器的IP地址最合适的数据类型

这个要解锁才行啊。。

你搜下兔子!~IP,去官网下载相应版本安装,

然后打开浏览器再看就可以了。。

Ⅳ SQL server 常用基本数据类型有哪些

一、
整数数据类型
整数数据类型是最常用的数据类型之一。
1、int
(integer)
2、smallint
3、tinyint
4、bigint
二、
浮点数据类型
浮点数据类型用于存储十进制小数。浮点数值的数据在sql
server
中采用上舍入(round
up
或称为只入不舍)方式进行存储。所谓上舍入是指,当(且仅当)要舍入的数是一个非零数时,对其保留数字部分的最低有效位上的数值加1
,并进行必要的进位。若一个数是上舍入数,其绝对值不会减少。如:对3.14159265358979
分别进行2
位和12位舍入,结果为3.15
和3.141592653590。
1、real
数据类型
2、float
3、decimal
4、numeric
三、二进制数据类型
1、binary
2、varbinary
四、
逻辑数据类型
bit:
bit数据类型占用1
个字节的存储空间,其值为0
或1
。如果输入0
或1
以外的值,将被视为1。
bit
类型不能定义为null
值(所谓null
值是指空值或无意义的值)。
五、字符数据类型
字符数据类型是使用最多的数据类型。它可以用来存储各种字母、数字符号、特殊符号。一般情况下,使用字符类型数据时须在其前后加上单引号’或双引号”

1
char
2、nchar
3、varchar
4、nvarchar
六、文本和图形数据类型
这类数据类型用于存储大量的字符或二进制数据。
1、text
2
ntext
3
image
七、
日期和时间数据类型
1
datetime
2
smalldatetime
八、货币数据类型
1
money
2
smallmoney
smallmoney数据类型类似于money
类型,但其存储的货币值范围比money数据类型小,其取值从-214,748.3648到+214,748.3647,存储空间为4
个字节。
九、
特定数据类型
sql
server
中包含了一些用于数据存储的特殊数据类型。
1
timestamp
十、用户自定义数据类型
sysname
sysname
数据类型是系统提供给用户的,便于用户自定义数据类型。它被定义为nvarchar(128),即它可存储128个unicode字符或256个一般字符。其具体使用方法请参见第7章“管理数据库表”中的“自定义数据类型”章节。
十一、
新数据类型
sql
server
2000
中增加了3
种数据类型:bigint、sql_variant和table。其中bigint数据类型已在整数类型中介绍,下面介绍其余两种:
1
sql_variant
sql_variant数据类型可以存储除文本、图形数据(text、ntext、image)和timestamp类型数据外的其它任何合法的sql
server数据。此数据类型大大方便了sql
server的开发工作。
2
table
table
数据类型用于存储对表或视图处理后的结果集。这一新类型使得变量可以存储一个表,从而使函数或过程返回查询结果更加方便快、捷其、使用请参见第13章“游标、视图和自定义函数”。

Ⅵ sql 中的数据类型有那些请讲明白些

这个太多了,推荐你还是看看Sql Sever 2000的基础教程
数据类型
在 Microsoft® SQL Server™ 中,每个列、局部变量、表达式和参数都有一个相关的数据类型,这是指定对象可持有的数据类型(整型、字符、money 等等)的特性。SQL Server 提供系统数据类型集,定义了可与 SQL Server 一起使用的所有数据类型。下面列出系统提供的数据类型集。

可以定义用户定义的数据类型,其是系统提供的数据类型的别名。有关用户定义的数据类型的更多信息,请参见 sp_addtype 和创建用户定义的数据类型。

当两个具有不同数据类型、排序规则、精度、小数位数或长度的表达式通过运算符进行组合时:

通过将数据类型的优先顺序规则应用到输入表达式的数据类型来确定所得值的数据类型。有关更多信息,请参见数据类型的优先顺序。

如果结果数据类型为 char、varchar、text、nchar、nvarchar 或 ntext,则结果值的排序规则由排序规则的优先顺序规则决定。有关更多信息,请参见排序规则的优先顺序。

结果的精度、小数位数及长度取决于输入表达式的精度、小数位数及长度。有关更多信息,请参见精度、小数位数和长度。
SQL Server 为 SQL-92 兼容性提供了数据类型同义词。有关更多信息,请参见数据类型同义词。

精确数字
整数
bigint

从 -2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807) 的整型数据(所有数字)。

int

从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。

smallint

从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。

tinyint

从 0 到 255 的整数数据。

bit
bit

1 或 0 的整数数据。

decimal 和 numeric
decimal

从 -10^38 +1 到 10^38 –1 的固定精度和小数位的数字数据。

numeric

功能上等同于 decimal。

money 和 smallmoney
money

货币数据值介于 -2^63 (-922,337,203,685,477.5808) 与 2^63 - 1 (+922,337,203,685,477.5807) 之间,精确到货币单位的千分之十。

smallmoney

货币数据值介于 -214,748.3648 与 +214,748.3647 之间,精确到货币单位的千分之十。

近似数字
float

浮点精度数字数据,有效值为:从 -1.79E + 308 到 -2.23E - 308,0 和 2.23E + 308 到 1.79E + 308。

real

浮点精度数字数据,有效值为:从 -3.40E + 38 到 -1.18E - 38,0 和 1.18E - 38 到 3.40E + 38。

datetime 和 smalldatetime
datetime

从 1753 年 1 月 1 日到 9999 年 12 月 31 日的日期和时间数据,精确到百分之三秒(或 3.33 毫秒)。

smalldatetime

从 1900 年 1 月 1 日到 2079 年 6 月 6 日的日期和时间数据,精确到分钟。

字符串
char

固定长度的非 Unicode 字符数据,最大长度为 8,000 个字符。

varchar

可变长度的非 Unicode 数据,最长为 8,000 个字符。

text

可变长度的非 Unicode 数据,最大长度为 2^31 - 1 (2,147,483,647) 个字符。

Unicode 字符串
nchar

固定长度的 Unicode 数据,最大长度为 4,000 个字符。

nvarchar

可变长度 Unicode 数据,其最大长度为 4,000 字符。sysname 是系统提供用户定义的数据类型,在功能上等同于 nvarchar(128),用于引用数据库对象名。

ntext

可变长度 Unicode 数据,其最大长度为 2^30 - 1 (1,073,741,823) 个字符。

二进制字符串
binary

固定长度的二进制数据,其最大长度为 8,000 个字节。

varbinary

可变长度的二进制数据,其最大长度为 8,000 个字节。

image

可变长度的二进制数据,其最大长度为 2^31 - 1 (2,147,483,647) 个字节。

其它数据类型
cursor

游标的引用。

sql_variant

一种存储 SQL Server 支持的各种数据类型(text、ntext、timestamp 和 sql_variant 除外)值的数据类型。

table

一种特殊的数据类型,存储供以后处理的结果集。

timestamp

数据库范围的唯一数字,每次更新行时也进行更新。

uniqueidentifier

全局唯一标识符 (GUID)。
回答者:wfchenjin - 大魔法师 九级 3-10 17:48

--------------------------------------------------------------------------------

SQL SERVER的数据类型

数据类弄是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或多或少有些不同。SQLServer 提供了 25 种数据类型:
·Binary [(n)]
·Varbinary [(n)]
·Char [(n)]
·Varchar[(n)]
·Nchar[(n)]
·Nvarchar[(n)]
·Datetime
·Smalldatetime
·Decimal[(p[,s])]
·Numeric[(p[,s])]
·Float[(n)]
·Real
·Int
·Smallint
·Tinyint
·Money
·Smallmoney
·Bit
·Cursor
·Sysname
·Timestamp
·Uniqueidentifier
·Text
·Image
·Ntext (1)二进制数据类型

二进制数据包括 Binary、Varbinary 和 Image
Binary 数据类型既可以是固定长度的(Binary),也可以是变长度的。
Binary[(n)] 是 n 位固定的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4 个字节。
Varbinary[(n)] 是 n 位变长度的二进制数据。其中,n 的取值范围是从 1 到 8000。其存储窨的大小是 n + 4个字节,不是n 个字节。
在 Image 数据类型中存储的数据是以位字符串存储的,不是由 SQL Server 解释的,必须由应用程序来解释。例如,应用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把数据存储在 Image 数据类型中。 (2)字符数据类型

字符数据的类型包括 Char,Varchar 和 Text
字符数据是由任何字母、符号和数字任意组合而成的数据。
Varchar 是变长字符数据,其长度不超过 8KB。Char 是定长字符数据,其长度最多为 8KB。超过 8KB 的ASCII 数据可以使用Text数据类型存储。例如,因为 Html 文档全部都是 ASCII 字符,并且在一般情况下长度超过 8KB,所以这些文档可以 Text 数据类型存储在SQL Server 中。 (3)Unicode 数据类型

Unicode 数据类型包括 Nchar,Nvarchar 和Ntext
在 Microsoft SQL Server 中,传统的非 Unicode 数据类型允许使用由特定字符集定义的字符。在 SQL Server安装过程中,允许选择一种字符集。使用 Unicode 数据类型,列中可以存储任何由Unicode 标准定义的字符。在 Unicode 标准中,包括了以各种字符集定义的全部字符。使用Unicode数据类型,所战胜的窨是使用非 Unicode 数据类型所占用的窨大小的两倍。
在 SQL Server 中,Unicode 数据以 Nchar、Nvarchar 和 Ntext 数据类型存储。使用这种字符类型存储的列可以存储多个字符集中的字符。当列的长度变化时,应该使用Nvarchar 字符类型,这时最多可以存储 4000 个字符。当列的长度固定不变时,应该使用 Nchar 字符类型,同样,这时最多可以存储4000 个字符。当使用 Ntext 数据类型时,该列可以存储多于 4000 个字符。 (4)日期和时间数据类型

日期和时间数据类型包括 Datetime 和 Smalldatetime两种类型
日期和时间数据类型由有效的日期和时间组成。例如,有效的日期和时间数据包括“4/01/98 12:15:00:00:00 PM”和“1:28:29:15:01AM 8/17/98”。前一个数据类型是日期在前,时间在后一个数据类型是霎时间在前,日期在后。在 Microsoft SQL Server中,日期和时间数据类型包括Datetime 和 Smalldatetime 两种类型时,所存储的日期范围是从 1753 年 1 月 1 日开始,到9999 年12 月 31 日结束(每一个值要求 8 个存储字节)。使用 Smalldatetime 数据类型时,所存储的日期范围是 1900年 1 月 1日 开始,到 2079 年 12 月 31 日结束(每一个值要求 4 个存储字节)。
日期的格式可以设定。设置日期格式的命令如下:
Set DateFormat {format | @format _var|
其中,format | @format_var 是日期的顺序。有效的参数包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默认情况下,日期格式为MDY。
例如,当执行 Set DateFormat YMD 之后,日期的格式为年 月 日 形式;当执行 Set DateFormat DMY 之后,日期的格式为日 月有年 形式 (5)数字数据类型

数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点数)和整数
整数由正整数和负整数组成,例如 39、25、0-2 和 33967。在 Micrsoft SQL Server 中,整数存储的数据类型是 Int,Smallint和 Tinyint。Int 数据类型存储数据的范围大于 Smallint 数据类型存储数据的范围,而 Smallint 据类型存储数据的范围大于Tinyint 数据类型存储数据的范围。使用 Int 数据狗昔存储数据的范围是从 -2 147 483 648 到 2 147 483 647(每一个值要求4个字节存储空间)。使用 Smallint 数据类型时,存储数据的范围从 -32 768 到 32 767(每一个值要求2个字节存储空间)。使用Tinyint 数据类型时,存储数据的范围是从0 到255(每一个值要求1个字节存储空间)。
精确小娄数据在 SQL Server 中的数据类型是 Decimal 和 Numeric。这种数据所占的存储空间根据该数据的位数后的位数来确定。
在SQL Server 中,近似小数数据的数据类型是 Float 和 Real。例如,三分之一这个分数记作。3333333,当使用近似数据类型时能准确表示。因此,从系统中检索到的数据可能与存储在该列中数据不完全一样。 (6)货币数据表示正的或者负的货币数量 。

在 Microsoft SQL Server 中,货币数据的数据类型是Money 和 Smallmoney Money数据类型要求 8 个存储字节,Smallmoney 数据类型要求 4 个存储字节。 (7)特殊数据类型

特殊数据类型包括前面没有提过的数据类型。特殊的数据类型有3种,即 Timestamp、Bit 和 Uniqueidentifier。
Timestamp 用于表示SQL Server 活动的先后顺序,以二进投影的格式表示。Timestamp 数据与插入数据或者日期和时间没有关系。
Bit 由 1 或者 0 组成。当表示真或者假、ON 或者 OFF 时,使用 Bit 数据类型。例如,询问是否是每一次访问的客户机请求可以存储在这种数据类型的列中。
Uniqueidentifier 由 16 字节的十六进制数字组成,表示一个全局唯一的。当表的记录行要求唯一时,GUID是非常有用。例如,在客户标识号列使用这种数据类型可以区别不同的客户。 2.用户定义的数据类型

用户定义的数据类型基于在 Microsoft SQL Server 中提供的数据类型。当几个表中必须存储同一种数据类型时,并且为保证这些列有相同的数据类型、长度和可空性时,可以使用用户定义的数据类型。例如,可定义一种称为 postal_code 的数据类型,它基于 Char 数据类型。
当创建用户定义的数据类型时,必须提供三个数:数据类型的名称、所基于的系统数据类型和数据类型的可空性。 (1)创建用户定义的数据类型

创建用户定义的数据类型可以使用 Transact-SQL 语句。系统存储过程 sp_addtype 可以来创建用户定义的数据类型。其语法形式如下:
sp_addtype {type},[,system_data_bype][,''null_type'']
其中,type 是用户定义的数据类型的名称。system_data_type 是系统提供的数据类型,例如 Decimal、Int、Char 等等。 null_type 表示该数据类型是如何处理空值的,必须使用单引号引起来,例如''NULL''、''NOT NULL''或者''NONULL''。
例子:
Use cust
Exec sp_addtype ssn,''Varchar(11)'',"Not Null''
创建一个用户定义的数据类型 ssn,其基于的系统数据类型是变长为11 的字符,不允许空。
例子:
Use cust
Exec sp_addtype birthday,datetime,''Null''
创建一个用户定义的数据类型 birthday,其基于的系统数据类型是 DateTime,允许空。
例子:
Use master
Exec sp_addtype telephone,''varchar(24),''Not Null''
Eexc sp_addtype fax,''varchar(24)'',''Null''
创建两个数据类型,即 telephone 和 fax (2)删除用户定义的数据类型

当用户定义的数据类型不需要时,可删除。删除用户定义的数据类型的命令是 sp_droptype {''type''}。
例子:
Use master
Exec sp_droptype ''ssn''
注意:当表中的列还正在使用用户定义的数据类型时,或者在其上面还绑定有默认或者规则时,这种用户定义的数据类型不能删除。

SQL SERVER的字段类型说明

以下为SQL SERVER7.0以上版本的字段类型说明。SQL SERVER6.5的字段类型说明请参考SQL SERVER提供的说明。

字段类型 描述
bit 0或1的整型数字
int 从-2^31(-2,147,483,648)到2^31(2,147,483,647)的整型数字
smallint 从-2^15(-32,768)到2^15(32,767)的整型数字
tinyint 从0到255的整型数字

decimal 从-10^38到10^38-1的定精度与有效位数的数字
numeric decimal的同义词

money 从-2^63(-922,337,203,685,477.5808)到2^63-1(922,337,203,685,477.5807)的货币数据,最小货币单位千分之十
smallmoney 从-214,748.3648到214,748.3647的货币数据,最小货币单位千分之十

float 从-1.79E+308到1.79E+308可变精度的数字
real 从-3.04E+38到3.04E+38可变精度的数字

datetime 从1753年1月1日到9999年12日31的日期和时间数据,最小时间单位为百分之三秒或3.33毫秒
smalldatetime 从1900年1月1日到2079年6月6日的日期和时间数据,最小时间单位为分钟

timestamp 时间戳,一个数据库宽度的唯一数字
uniqueidentifier 全球唯一标识符GUID

char 定长非Unicode的字符型数据,最大长度为8000
varchar 变长非Unicode的字符型数据,最大长度为8000
text 变长非Unicode的字符型数据,最大长度为2^31-1(2G)

nchar 定长Unicode的字符型数据,最大长度为8000
nvarchar 变长Unicode的字符型数据,最大长度为8000
ntext 变长Unicode的字符型数据,最大长度为2^31-1(2G)

binary 定长二进制数据,最大长度为8000
varbinary 变长二进制数据,最大长度为8000
image 变长二进制数据,最大长度为2^31-1(2G)
回答者:mgc - 经理 五级 3-10 17:53

--------------------------------------------------------------------------------

表1显示了数字数据类型;表2显示了字符数据类型;表3显示了日期和布尔数据类型。

表1 scalar types:numeric
datatype range subtypes description
binary_integer -214748-2147483647 natural
natural
npositive
positiven
signtype
用于存储单字节整数。
要求存储长度低于number值。
用于限制范围的子类型(subtype):
natural:用于非负数
positive:只用于正数
naturaln:只用于非负数和非null值
positiven:只用于正数,不能用于null值
signtype:只有值:-1、0或1.
number 1.0e-130-9.99e125 dec
decimal
double
precision
float
integeric
int
numeric
real
smallint 存储数字值,包括整数和浮点数。可以选择精度和刻度方式,语法:
number[([,])]。
缺省的精度是38,scale是0.
pls_integer -2147483647-2147483647 与binary_integer基本相同,但采用机器运算时,pls_integer提供更好的性能 。

表2 字符数据类型
datatype rang subtype description
char 最大长度32767字节 character 存储定长字符串,如果长度没有确定,缺省是1
long 最大长度2147483647字节 存储可变长度字符串
raw 最大长度32767字节 用于存储二进制数据和字节字符串,当在两个数据库之间进行传递时,raw数据不在字符集之间进行转换。
longraw 最大长度2147483647 与long数据类型相似,同样他也不能在字符集之间进行转换。
rowid 18个字节 与数据库rowid伪列类型相同,能够存储一个行标示符,可以将行标示符看作数据库中每一行的唯一键值。
varchar2 最大长度32767字节 stringvarchar 与varchar数据类型相似,存储可变长度的字符串。声明方法与varchar相同

表3 date和boolean
datatype range description
boolean true/false 存储逻辑值true或false,无参数
date 01/01/4712 bc 存储固定长的日期和时间值,日期值中包含时间

Ⅶ SQL数据库的数据类型有哪些,请详细解释一下

》SQL Server 中的数据类型归纳为下列类别:

精确数字
Unicode 字符串

近似数字

二进制字符串

日期和时间

其他数据类型

字符串

》在 SQL Server 中,根据其存储特征,某些数据类型被指定为属于下列各组:

大值数据类型:varchar(max)、nvarchar(max) 和
varbinary(max)
大型对象数据类型:text、ntext、image、varchar(max)、nvarchar(max)、varbinary(max)
和 xml

》精确数字

bit(位)

tinyint(1个字节)

smallint(2个字节,-32767~32767)

int(4个字节,-20亿~20亿)

bigint(8个字节)

numeric

decimal

smallmoney

money

》近似数字

float
real

》日期和时间

date
smalldatetime(精确到分钟)

datetime

datetime2

time

datetimeoffset(时间差)

》字符串

char
varchar

text

》Unicode 字符串

nchar
nvarchar

ntext

》二进制字符串

binary
varbinary

image

Ⅷ sql语句分几类,sql数据库都有哪几种数据类型

一、 整数数据类型

整数数据类型是最常用的数据类型之一。

1、INT (INTEGER)

INT (或INTEGER)数据类型存储从-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之间的所有正负整数。每个INT 类型的数据按4 个字节存储,其中1 位表示整数值的正负号,其它31 位表示整数值的长度和大小。

2、SMALLINT

SMALLINT 数据类型存储从-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之间的所有正负整数。每个SMALLINT 类型的数据占用2 个字节的存储空间,其中1 位表示整数值的正负号,其它15 位表示整数值的长度和大小。

3、TINYINT

TINYINT数据类型存储从0 到255 之间的所有正整数。每个TINYINT类型的数据占用1 个字节的存储空间。

4、BIGINT

BIGINT 数据类型存储从-2^63 (-9 ,223, 372, 036, 854, 775, 807) 到2^63-1( 9, 223, 372, 036 ,854 ,775, 807) 之间的所有正负整数。每个BIGINT 类型的数据占用8个字节的存储空间。

二、 浮点数据类型

浮点数据类型用于存储十进制小数。浮点数值的数据在SQL Server 中采用上舍入(Round up 或称为只入不舍)方式进行存储。所谓上舍入是指,当(且仅当)要舍入的数是一个非零数时,对其保留数字部分的最低有效位上的数值加1 ,并进行必要的进位。若一个数是上舍入数,其绝对值不会减少。如:对3.14159265358979 分别进行2 位和12位舍入,结果为3.15 和3.141592653590。

1、REAL 数据类型

REAL数据类型可精确到第7 位小数,其范围为从-3.40E -38 到3.40E +38。 每个REAL类型的数据占用4 个字节的存储空间。

2、FLOAT

FLOAT数据类型可精确到第15 位小数,其范围为从-1.79E -308 到1.79E +308。 每个FLOAT 类型的数据占用8 个字节的存储空间。 FLOAT数据类型可写为FLOAT[ n ]的形式。n 指定FLOAT 数据的精度。n 为1到15 之间的整数值。当n 取1 到7 时,实际上是定义了一个REAL 类型的数据,系统用4 个字节存储它;当n 取8 到15 时,系统认为其是FLOAT 类型,用8 个字节存储它。

3、DECIMAL

DECIMAL数据类型可以提供小数所需要的实际存储空间,但也有一定的限制,您可以用2 到17 个字节来存储从-10的38次方-1 到10的38次方-1 之间的数值。可将其写为DECIMAL[ p [s] ]的形式,p 和s 确定了精确的比例和数位。其中p 表示可供存储的值的总位数(不包括小数点),缺省值为18; s 表示小数点后的位数,缺省值为0。 例如:decimal (15 5),表示共有15 位数,其中整数10 位,小数5。 位表4-3 列出了各精确度所需的字节数之间的关系。

Ⅸ SQL中数据类型有哪些

int 整型 int 数据类型可以存储从- 231(-2147483648)到231 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型。这种数据类型在数据库里占用4个字节

tinyint 整型 tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。 这种数据类型在数据库中占用1 个字节

float 近似数值型 float 数据类型是一种近似数值类型,供浮点数使用。说浮点数是近似的,是因为在其范围内不是所有的数都能精确表示。浮点数可以是从-1.79E+308到1.79E+308 之间的任意数

bit 整型 bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off

char 字符型 char数据类型用来存储指定长度的定长非统一编码型的数据。当定义一列为此类型时,你必须指定列长。当你总能知道要存储的数据的长度时,此数据类型很有用。例如,当你按邮政编码加4个字符格式来存储数据时,你知道总要用到10个字符。此数据类型的列宽最大为8000 个字符

varchar 字符型 varchar数据类型,同char类型一样,用来存储非统一编码型字符数据。与char 型不一样,此数据类型为变长。当定义一列为该数据类型时,你要指定该列的最大长度。 它与char数据类型最大的区别是,存储的长度不是列长,而是数据的长度

nchar 统一编码字符型 nchar 数据类型用来存储定长统一编码字符型数据。统一编码用双字节结构来存储每个字符,而不是用单字节(普通文本中的情况)。它允许大量的扩展字符。此数据类型能存储4000种字符,使用的字节空间上增加了一倍

nvarchar 统一编码字符型 nvarchar 数据类型用作变长的统一编码字符型数据。此数据类型能存储4000种字符,使用的字节空间增加了一倍

text 字符型 text 数据类型用来存储大量的非统一编码型字符数据。这种数据类型最多可以有231-1或20亿个字符

datetime 日期时间型 datetime数据类型用来表示日期和时间。这种数据类型存储从1753年1月1日到9999年12月3 1日间所有的日期和时间数据, 精确到三百分之一秒或3.33毫秒

Smalldatetime 日期时间型 smalldatetime 数据类型用来表示从1900年1月1日到2079年6月6日间的日期和时间,精确到一分钟

image 二进制数据类型 image 数据类型用来存储变长的二进制数据,最大可达231-1或大约20亿字节

基本查询
select column1,columns2,...
from table_name
说明:把table_name 的特定栏位资料全部列出来
select *
from table_name
where column1 = ***
[and column2 > yyy] [or column3 <> zzz]
说明:
1.'*'表示全部的栏位都列出来。
2.where 之后是接条件式,把符合条件的资料列出来。

select column1,column2
from table_name
order by column2 [desc]
说明:order by 是指定以某个栏位做排序,[desc]是指从大到小排列,若没有指明,则是从小到大
排列

组合查询
组合查询是指所查询得资料来源并不只有单一的表格,而是联合一个以上的
表格才能够得到结果的。
select *
from table1,table2
where table1.colum1=table2.column1
说明:
1.查询两个表格中其中 column1 值相同的资料。
2.当然两个表格相互比较的栏位,其资料形态必须相同。
3.一个复杂的查询其动用到的表格可能会很多个。

整合性的查询:
select count (*)
from table_name
where column_name = ***
说明:
查询符合条件的资料共有几笔。
select sum(column1)
from table_name
说明:
1.计算出总和,所选的栏位必须是可数的数字形态。
2.除此以外还有 avg() 是计算平均、max()、min()计算最大最小值的整合性查询。
select column1,avg(column2)
from table_name
group by column1
having avg(column2) > ***
说明:
1.group by: 以column1 为一组计算 column2 的平均值必须和 avg、sum等整合性查询的关键字
一起使用。
2.having : 必须和 group by 一起使用作为整合性的限制。

复合性的查询
select *
from table_name1
where exists (
select *<BR>from table_name2
where conditions )
说明:
1.where 的 conditions 可以是另外一个的 query。
2.exists 在此是指存在与否。
select *
from table_name1
where column1 in (
select column1
from table_name2
where conditions )
说明:
1. in 后面接的是一个集合,表示column1 存在集合里面。
2. select 出来的资料形态必须符合 column1。

其他查询
select *
from table_name1
where column1 like 'x%'
说明:like 必须和后面的'x%' 相呼应表示以 x为开头的字串。
select *
from table_name1
where column1 in ('***','yyy',..)
说明:in 后面接的是一个集合,表示column1 存在集合里面。
select *
from table_name1
where column1 between xx and yy
说明:between 表示 column1 的值介于 xx 和 yy 之间。

3、更改资料:
update table_name
set column1='***'
where conditoins
说明:
1.更改某个栏位设定其值为'***'。
2.conditions 是所要符合的条件、若没有 where 则整个 table 的那个栏位都会全部被更改。

4、删除资料:
delete from table_name
where conditions
说明:删除符合条件的资料。

说明:关于where条件后面如果包含有日期的比较,不同数据库有不同的表达式。具体如下:
(1)如果是access数据库,则为:where mydate>#2000-01-01#
(2)如果是oracle数据库,则为:where mydate>cast('2000-01-01' as date)
或:where mydate>to_date('2000-01-01','yyyy-mm-dd')
在delphi中写成:
thedate='2000-01-01';
query1.sql.add('select * from abc where mydate>cast('+''''+thedate+''''+' as date)');

如果比较日期时间型,则为:
where mydatetime>to_date('2000-01-01 10:00:01','yyyy-mm-dd hh24:mi:ss')

4、增加资料:
insert into table_name (column1,column2,...)
values ( value1,value2, ...)
说明:
1.若没有指定column 系统则会按表格内的栏位顺序填入资料。
2.栏位的资料形态和所填入的资料必须吻合。
3.table_name 也可以是景观 view_name。

insert into table_name (column1,column2,...)
select columnx,columny,... from another_table
说明:也可以经过一个子查询(subquery)把别的表格的资料填入。