
正文
sqlserver的基本介绍,sqlserver用法
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
MS SQL的数据类型详细介绍?
. char 和nchar 当填入数据为空时,数据库自动使用全空格来代替,从而使not null形同虚设。所以如果字段不能为空,一定要在程序中提前判断。
2. char 和nchar因为长度固定,据说读写的速度要比 varchar和nvarchar快
=========================================================================
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|br brbrbr其中,format | @format_var 是日期的顺序。有效的参数包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默认情况下,日期格式为MDY。brbrbr例如,当执行 Set DateFormat YMD 之后,日期的格式为年 月 日 形式;brbr当执行 Set DateFormat DMY 之后,日期的格式为日 月有年 形式brbrbr(5)数字数据类型brbrbr数字数据只包含数字。数字数据类型包括正数和负数、小数(浮点数)和整数brbrbr整数由正整数和负整数组成,例如 39、25、0-2 和 33967。brbr在 Micrsoft SQL Server 中,整数存储的数据类型是Int,Smallint和 Tinyint。brbrInt 数据类型存储数据的范围大于 Smallint 数据类型存储数据的范围,brbr而 Smallint 据类型存储数据的范围大于Tinyint 数据类型存储数据的范围。brbr使用 Int 数据存储数据的范围是从 -2 147 483 648 到 2 147 483 647(每一个值要求4个字节存储空间)。brbr使用 Smallint 数据类型时,存储数据的范围从 -32 768 到 32 767(每一个值要求2个字节存储空间)。brbr使用Tinyint 数据类型时,存储数据的范围是从0 到255(每一个值要求1个字节存储空间)。brbrbr精确小 数数据在 SQL Server 中的数据类型是 Decimal 和 Numeric。这种数据所占的存储空间根据该数据的位数后的位数来确定。brbrbr在SQL Server 中,近似小数数据的数据类型是 Float 和 Real。例如,三分之一这个分数记作。brbr3333333,当使用近似数据类型时能准确表示。因此,从系统中检索到的数据可能与存储在该列中数据不完全一样。brbr=======================================================================================brbrSQL Server的数据类型介绍(二)brbrbr(6)货币数据表示正的或者负的货币数量 。brbrbr在 Microsoft SQL Server 中,货币数据的数据类型是Money 和 Smallmoney 。brbrbr而Money数据类型要求 8 个存储字节,Smallmoney 数据类型要求 4 个存储字节。brbrbr(7)特殊数据类型brbrbr特殊数据类型包括前面没有提过的数据类型。特殊的数据类型有3种,即Timestamp、Bit 和 Uniqueidentifier。brbrbrTimestamp 用于表示SQL Server 活动的先后顺序,以二进投影的格式表示。Timestamp 数据与插入数据或者日期和时间没有关系。brbrbrBit 由 1 或者 0 组成。当表示真或者假、ON 或者 OFF 时,使用 Bit 数据类型。brbrbrbr例如,询问是否是每一次访问的客户机请求可以存储在这种数据类型的列中。brbrbrUniqueidentifier 由 16 字节的十六进制数字组成,表示一个全局唯一的。brbrbrbr当表的记录行要求唯一时,GUID是非常有用。例如,在客户标识号列使用这种数据类型可以区别不同的客户。brbrbrbr=======================================================================brbr用户定义的数据类型brbrbr用户定义的数据类型基于在 Microsoft SQL Server 中提供的数据类型。当几个表中必须存储同一种数据类型时,brbrbr并且为保证这些列有相同的数据类型、长度和可空性时,可以使用用户定义的数据类型。brbrbr例如,可定义一种称为 postal_code 的数据类型,它基于 Char 数据类型。brbrbr当创建用户定义的数据类型时,必须提供三个数:数据类型的名称、所基于的系统数据类型和数据类型的可空性。brbrbr(1)创建用户定义的数据类型brbrbr创建用户定义的数据类型可以使用 Transact-SQL 语句。系统存储过程 sp_addtype 可以来创建用户定义的数据类型。其语法形式如下:brbrbrsp_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'
注意:当表中的列还正在使用用户定义的数据类型时,或者在其上面还绑定有默认或者规则时,这种用户定义的数据类型不能删除。
相关问答
Q1: sql事务的 详细介绍?
(1):事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。通过事务,SQL
Server能将逻辑相关的一组操作绑定在一起,以便服务器保持数据的完整性。
(2):事务通常是以BEGIN
TRANSACTION开始,以COMMIT或ROLLBACK结束。
COMMIT表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。
ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续进行,系统将事务中对数据库的所有以完成的操作全部撤消,滚回到事务开始的状态。
(3):事务运行的三种模式:
A:自动提交事务
每条单独的语句都是一个事务。每个语句后都隐含一个COMMIT。
B:显式事务
以BEGIN
TRANSACTION显式开始,以COMMIT或ROLLBACK显式结束。
C:隐性事务
在前一个事务完成时,新事务隐式启动,但每个事务仍以COMMIT或ROLLBACK显式结束。
(4):事务的特性(ACID特性)
A:原子性(Atomicity)
事务是数据库的逻辑工作单位,事务中包括的诸操作要么全做,要么全不做。
B:一致性(Consistency)
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
C:隔离性(Isolation)
一个事务的执行不能被其他事务干扰。
D:持续性/永久性(Durability)
一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。
注:事务是恢复和并发控制的基本单位。
((1)是回答事务的概念到底是什么——即你的提问,至于(2)、(3)、(4)只是作的稍许补充而已,不必深究,呵呵……)
Q2: sql sever 是什么?
SQL是Structured Quevy Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。 br
##1 二、SQL数据库数据体系结构 br
SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(base table);存储模式(内模式)称为“存储文件”(stored file);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。名称对称如^00100009a^: br
##1 三、SQL语言的组成 br
在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成: br
1.一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。 br
2.一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。 br
3.一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。 br
4.一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。 br
5.用户可以用SQL语句对视图和基本表进行查询等操作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。 br
6.SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独立的用户接口,供交互环境下的终端用户使用。 br
##1 四、对数据库进行操作 br
SQL包括了所有对数据库的操作,主要是由4个部分组成: br
1.数据定义:这一部分又称为“SQL DDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。 br
2.数据操纵:这一部分又称为“SQL DML”,其中包括数据查询和数据更新两大类操作,其中数据更新又包括插入、删除和更新三种操作。 br
3.数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。 br
4.嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。 br
下面我们将分别介绍: br
##2 (一)数据定义 br
SQL数据定义功能包括定义数据库、基本表、索引和视图。 br
首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^) br
1.数据库的建立与删除 br
(1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为: br
CREATE DATABASE 数据库名 〔其它参数〕 br
其中,数据库名在系统中必须是唯一的,不能重复,不然将导致数据存取失误。〔其它参数〕因具体数据库实现系统不同而异。 br
例:要建立项目管理数据库(xmmanage),其语句应为: br
CREATE DATABASE xmmanage br
(2) 数据库的删除:将数据库及其全部内容从系统中删除。 br
其语句格式为:DROP DATABASE 数据库名 br
例:删除项目管理数据库(xmmanage),其语句应为: br
DROP DATABASE xmmanage br
2.基本表的定义及变更 br
本身独立存在的表称为基本表,在SQL语言中一个关系唯一对应一个基本表。基本表的定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改。 br
……br
Q3: SQL Server 做什么用的
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点。
可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。
SQL Server数据库的作用:可以面向数据库执行查询、存储和检索数据、可以通过SQL语句 从数据库写入或者是取回数据、可以更新数据库中的数据。
SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle,Sybase,Microsoft SQL Server,Access等都采用了SQL语言标准。
扩展资料:
主要特性
1、高性能设计,可充分利用WindowsNT的优势。
2、系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。
3、强壮的事务处理功能,采用各种方法保证数据的完整性。
4、支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。 SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。
参考资料来源:百度百科--SQLserver数据库
Q4: SQL Sever2000 数据库介绍
SQL Server是微软公司开发的一个关系数据库管理系统,以Transact_SQL作为它的数据库查询和编程语言。T-SQL是结构化查询语言SQL的一种,支持ANSI SQL-92标准。
SQL Server 采用二级安全验证、登录验证及数据库用户帐号和角色的许可验证。SQL Server 支持两种身份验证模式:Windows NT身份验证和SQL Server 身份验证。7.0版支持多种类型的角色,"角色"概念的引入方便了权限的管理,也使权限的分配更加灵活。
SQL Server为公共的管理功能提供了预定义的服务器和数据库角色,可以很容易为某一特定用户授予一组选择好的许可权限。 SQL Server可以在不同的操作平台上运行,支持多种不同类型的网络协议如TCP/IP、IPX/SPX、Apple Talk等。SQL Server在服务器端的软件运行平台是Windows NT、Windows9x,在客户端可以是Windows3.x、Windows NT、Windows9x,也可以采用其它厂商开发的系统如Unix、Apple Macintosh等。
微软的SQL Server是一项完美的客户/服务器系统。SQL Server需要安装在Windows NT的平台上,而Windows NT可以支持Intel 386,Power PC,MIPS,Alpha PC和RISC等平台,它使SQL Server具备足够的威力和功能。
这里所有的文章所采用的数据库应用程序都是基于SQL Server之上的,采用ODBC及标准的SQL查询,可以非常简单的移植到任何一个支持ODBC的数据库之上,如:Oracle,Informix,Db2和Access,在阅读有关ASP数据库编程技术之前,要确认你至少熟悉一种数据库管理系统,并可以使用标准的SQL查询语言操作数据库。
SQL Server提供服务器端的软件,这部分需要安装在NT Server上,SQL Server的用户端则可以安装在许多用户端PC系统中,Windows可以让用户端进行数据库的建立,维护及存取等操作,SQL Server可以最多定义32767个数据库,每个数据库中,可以定义20亿个表格,每个表格可以有250个字段,每个表格的数据个数并没有限制,每一个表格可以定义250个索引,其中有一个可以是Clustered索引。
SQL Server所使用的数据库查询语言称为Transact-SQL,它是SQL Server的核心,Transact-SQL强化了原有的SQL关键字以进行数据的存取,储存及处理等功能,Transact-SQL扩充了流程控制指定,可以使你方便的编写功能强大的存储过程,他们存放在服务器端,并预先编译过,执行速度非常块,触发是一种特殊的存储过程,用来确保SQL Server数据库引用的完整性,你可以建立插入,删除和更新触发以控制相关的表格中对数据列的插入,删除和更新,你还可以使用规则(Rule),缺省(default)以及限制(Constraints),来协助将新的数值套用到表格中去!
一、SQL SERVER的特点
上手容易
话分两头,如果您的企业至今还未购置数据库,其中一个主要的原因可能就是认为它不好上手,那么,从SQLServer开始吧。毕竟,大多数的中小企业日常的数据应用是建立在Windows平台上的。由于SQLServer与Windows界面风格完全一致,且有许多"向导(Wizard)"帮助,因此易于安装和学习,有关SQLServer的资料、培训随处可得,并且目前国内具有MCDBA认证的工程师不在少数。
从另一个角度来讲,学习SQLServer是掌握其他平台及大型数据,如Oracle,Sybase,DB/2的基础。因为这些大型数据库对于设备、平台、人员知识的要求往往较高,而并不是每个人都具备这样的条件,且有机会去接触它们。但有了SQLServer的基础,再去学习和使用它们就容易多了。IT行业的实践经验充分证明了这一点。
兼容性良好
由于今天Windows操作系统占领着主导地的位,选择SQLServer一定会在兼容性方面取得一些优势。另外,SQLServer2000除了具有扩展性,可靠性以外,还具有可以迅速开发新的因特网系统的功能。尤其是它可以直接存贮XML数据,可以将搜索结果以XML格式输出等特点,有利于构建了异构系统的互操作性,奠定了面向互联网的企业应用和服务的基石。这些特点在.NET战略中发挥着重要的作用。
电子商务
在使用由MicrosoftSQLServer2000关系数据库引擎的情况下,XML数据可在关系表中进行存储,而查询则能以XML格式将有关结果返回。此外,XML支持还简化了后端系统集成,并实现了跨防火墙的无缝数据传输。你还可以使用HypertextTransferProtocol(超文本传输协议,HTTP)来访问SQLServer2000,以实现面向SQLServer2000数据库的安全Web连接和无须额外编程的联机分析处理(OLAP)多维数据集。
数据仓库
MicrosoftSQLServer2000非常明显的改进就是增加了OLAP(联机分析处理)功能,这可以让很多中小企业用户也可以使用数据仓库的一些特性进行分析。OLAP可以通过多维存储技术对大型、复杂数据集执行快速、高级的分析工作。数据挖掘功能能够揭示出隐藏在大量数据中的倾向及趋势,它允许组织或机构最大
限度的从数据中获取价值。通过对现有数据进行有效分析,这一功能可以对未来的趋势进行预测。
增强的在线商务
MicrosoftSQLServer2000简化了管理、优化工作,并且增强了迅速、成功的部署在线商务应用程序所需的可靠性和伸缩性。其中,用以提高可靠性的特性包括日志传送、在线备份和故障切换群集。在伸缩性方面的改进包括对多达32颗CPU和64GBRAM的支持。通过自动优化和改进后的管理特性--诸如数据文件尺寸的自动管理、基于向导的数据库拷贝、自动内存管理和简化的故障切换群集安装与管理,在线商务应用程序能够被迅速部署并有效管理。
利于构筑"敏捷性商务"
所谓"敏捷性商务"就是能够打破内部和外部的商业界限,对迅速改变的环境做出快速反应。。微软已经与关键的合作伙伴建立起了战略关系,创造出了能够与许多供应商的产品实现整合的解决方案,因而企业用户并不需要做出"要么完全接受,要么全部不要"的承诺。在部署解决方案的过程中,企业用户不一定要拆除原有的设备从头。敏捷商务让企业用户能够充分利用现有的系统,自主决定所需的硬件和软件解决方案以及由谁来提供,伸缩自如、游刃有余。
目前最新的版本为MicrosoftSQLServer2005







