sql数据类型有哪些?

sql数据类型有哪些?,第1张

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 Server常用数据类型

数据类型是数据的一种属性,是数据所表示信息的类型。下面是我为大家搜索整理了关于SQLServer常用数据类型,欢迎参考阅读,希望对大家有所帮助。

SQLServer2000提供了比较多的数据类型供用户使用,包括字符型数据类型、数值型数据类型、货币型数据类型、日期/时间型数据类型等。

一、字符型数据类型

字符型数据类型是使用最多的数据类型。它可以用来存储各种字母、数字符号、特殊符号。在使用字符类型数据时,必须为其加上单引号。若将数值数据包括在单引号中,将被视为字符类型数据。一般来说,字符型数据类型有两种基本形式:

(一)CHAR定长字符型数据类型

CHAR数据类型的定义形式为CHAR(n),n为长度,n的取值范围为1-8000,共占n个字节。若存储的字符串长度小于n,则系统自动使用空格填补剩余的位置。若存储的字符串长度大于n,那么在执行插入记录语句时将导致执行错误。

(二)VARCHAR变长字符型数据类型

VARCHAR数据类型的定义形式为VARCHAR(n),最大长度为n,n的取值范围为1-8000。VARCHAR数据类型的存储长度为实际字符串的长度,若存储的字符串长度小于n,系统不会使用空格填补剩余的位置。VARCHAR数据类型通常用于存放长度变化较大的字符串,这样可以节约大量的存储空间。但是使用varn)数据类型的缺点是,这种变长的存储方法使得用户无法确切地估计存储数据所使用的空间大小。

二、数值型数据类型

数值型数据类型包括整型数据类型、数字数据类型和浮点数据类型三种。

(一)整型数据类型

整型数据类型只存储整数。整型数据类型包括以下四种:

bigint数据类型

bigint数据类型占8个字节,共64位,能够存储-263~263-1之间的所有正负整数。在64位中,63位用来存储数值,1位用来存储数值的正负。

int数据类型

int数据类型占4个字节,共32位,能够存储-231~231-1之间的所有正负整数。在32位中,31位用来存储数值,1位用来存储数值的正负。

smallint数据类型

smallint数据类型占2个字节,共16位,能够存储-215~215-1之间的所有正负整数。在16位中,15位用来存储数值,1位用来存储数值的正负。

(二)数字数据类型

数字数据类型包括decimal数据类型和numeric数据类型两种,numeric数据类型与decimal数据类型完全相同。decimal数据类型可以提供小数所需要的实际存储空间,decimal数据类型最多可存储38位数字。

decimal数据类型的定义形式为decimal(p,s)。

其中:

p:为指定精度或对象能够控制的数字个数。

s:为指定可放到小数点右边的小数位数或数字个数。

p和s必须遵守以下规则:0<=s<=p<=38。

(三)浮点数据类型

浮点数据类型包括float数据类型和real数据类型,这两种数据类型被称为近似数据类型。

real数据类型

real数据类型占4个字节,共32位,能够存储-3.40E+38~3.40E+38之间所有的浮点数。

float数据类型

float数据类型占8个字节,共64位,能够存储-1.79E+308~1.79E+308之间所有的浮点数。float数据类型可精确到第15位小数。float数据类型可以定义为float(n),n为数据的精度。若n取1到7时,实际上是定义了一个real类型的数据,系统将分配4个字节的.空间存储数据若n取8到15时,系统认为其是float类型,将分配8个字节的空间存储数据。

三、货币型数据类型

货币型数据类型用于存储货币值。在SQLServer2000中提供两种货币型数据类型:money数据类型和smallmoney数据类型。

(一)money数据类型

money数据类型使用8个字节存储数据,由两部分组成,前面4个字节表示货币值的整数部分,后面4个字节表示货币值的小数部分。

(二)smallmoney数据类型

smallmoney数据类型类似于money类型,使用4个字节存储数据,前面2个字节表示货币值的整数部分,后面2个字节表示货币值的小数部分。

四、日期/时间型数据类型

日期/时间型数据类型用于存储日期和时间的结合体。

(一)datetime数据类型

datetime数据类型可以存储从公元1753年1月1日零时起到公元9999年12月31日23时59分59秒之间的所有日期和时间,其精确度可达三百分之一秒。datetime数据类型占用8个字节的存储空间。

(二)smalldatetime数据类型

smalldatetime数据类型与datetime数据类型相似,但其日期时间范围较小,可以存储从1900年1月1日到2079年6月6日,精度可以达到分钟。smalldatetime数据类型占用4个字节的存储空间。

SQL Server vNext on Linux安装

今天微软正式发布上SQL Server 2016 SP1,根据以往的SP1定律,可以在生产环境上使用了。打了SP1的标准版将具有企业版几乎所有的的功能。只有RAM 超过128GB或者超过24核心或者超过4路的环境才必须要安装企业版。

还有一个重要的发布:SQL Server vNext on Linux。也是本文介绍安装的版本。长话短说,开始安装。

这个版本的SQL Server,官方支持的平台是Red Hat Enterpise 7.2 或者Ubuntu 16.04。但是我手上暂时没有Red Hat,就用CentOS 7.2试试。我是以root身份安装的。

1. 安装

#下载库配置文件curl https://packages.microsoft.com/config/rhel/7/mssql-server.repo >/etc/yum.repos.d/mssql-server.repo#安装sudo yum install -y mssql-server

2. 运行配置文件

#运行SQL Server的配置文件进行配置。#这个过程会要你同意License条款,设置SA密码,设置SQL Server服务开机启动/opt/mssql/bin/sqlservr-setup

3. 检查服务状态

#检查SQL Server的服务状态systemctl status mssql-server

4. 修改防火墙

#修改防火墙,允许1433端口systemctl start firewalldfirewall-cmd --zone=public --add-port=1433/tcp --permanentfirewall-cmd --reload

5. 安装SQL工具,包括sqlcmd和bcp

#下载源的库配置文件curl https://packages.microsoft.com/config/rhel/7/prod.repo >/etc/yum.repos.d/msprod.repo#安装toolsyum install mssql-tools

6. 连接测试

# 使用sqlcmd的本地连接。直接在-P参数后填密码或者回车后输入密码。sqlcmd -S . -U SA -p

发现sqlcmd的使用方式和windows下是一样的。返回内容最后有一个根据当前查询的耗时预估的每秒事务处量。

然后建个库,建个表试试。

远程连接。从windows使用sqlcmd,用外网IP连接

使用SSMS连接,我使用是SQL 2014安装时自带SSMS,可能会有一些不支持问题。可以看到Agent没启动的,实际上是这个版本没有Agent。

有意思的是,使用SSMS可以创建库,却不能创建表。从错误信息来看,似乎是不支持图形界面创建表。

总结:

尝鲜性地测试一下,有机会还会测试更多功能。目前不支持Agent,复制和大部分BI功能组件。

很多人对SQL Server On Linux是有所期待。如果它在Linux上的表现与之在以往Windows上的表现一样优秀的话,我相信会有更多人会使用它的。

SQL Server On Linux的更多文档内容:SQL Server on Linux Documentation


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10039544.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存