1、字符串

    字符数据类型是SQL Server 中最常用的数据类型之一,它可以用来存储各种字母、数字符号和特殊符号。在使用字符数据类型时,需要在其前后加上英文单引号或者双引号。

(1)char:当用char 数据类型存储数据时,每个字符和符号占用1 个字节的存储空间。

其定义形式为:char(n)

其中,n 表示所有字符所占的存储空间,n 的取值为1~8000。若不指定n 值,系统默认n 的值为1。若输入数据的字符串长度小于n,则系统自动在其后添加空格来填满设定好的空间。若输入的数据过长,将会截掉其超出部分。如果定义了一个char 数据类型,而且允许该列为空,则该字段被当作varchar 来处理。

(2)varchar:用varchar 数据类型可以存储长达8000 个字符的可变长度字符串,和char类型不同的是varchar 类型的存储空间根据输入数据的实际长度而变化。

例如,定义varchar(20),则它对应的字段最多可以存储20 个字节,如果数据的实际长度不到20 个字节,系统不会在其后添加空格,因此使用varchar 类型可以节省空间。

(3)text:用于存储大容量文本数据。当要存储的字符型数据非常巨大,char 和varchar已经不能满足其存储要求(大于8000 字节)时,应该选择text 数据类型。Text 数据类型的容量可以在1~(231–1)(2 147 483 647)个字节范围之内,但实际应用时要根据硬盘的存储空间而定。在定义text 数据类型时,不需要指定数据长度,SQL Server 会根据数据的长度自动为其分配空间。

2.Unicode字符串

Unicode(统一字符编码标准)字符集标准,用于支持国际上的非英语语种。每个Unicode字符用两个字节为一个存储单位,所以Unicode 数据类型所占用的存储空间是非Unicode数据类型的两倍。

(1)nchar:其定义形式为nchar(n),其中n 表示所有字符所占的存储空间,n 的取值为1~4000。

(2)nvarchar:其定义形式为nvarchar(n) ,其中n 表示所有字符所占的存储空间,n的取值为1~4000。

(3)ntext:用于存储大容量文本数据。其理论上的容量为230–1(1 073 741 823)个字节。

参考:零点起飞学sql。

Sqlserver知识点1的更多相关文章

  1. SqlServer知识点记录分享

    知识点介绍 双向检索:这里就不大话概念了,直接说它的作用 ISNULL()函数:判断函数是否有值,如果变量没有赋值就给定指定的值,下面的例子就是如果@TOTALCOUNT变量为NULL那么就赋值为空字 ...

  2. sqlserver 知识点

    数据库知识点 1.数据库操作: 增:insert into 表名 values(值1,值2,值3) 删:delete 列名 from 表名 where 条件 改:update 表名 set =值 wh ...

  3. SqlServer知识点

    在公司天天写Sql写,存储过程,但是公司工具模板把创建的语句都写好了,只负责写里面的逻辑,久而久之,创建语句都不会写了.还有一些知识点都很模糊,平常使用的时候都不清楚,稀里糊涂的就在用.在这里整理一下 ...

  4. SqlServer知识点-操作xml

    一.开发环境 SQL2010 二.开发过程 1.声明一个xml类型变量 DECLARE @xmlInfo XML; SET @xmlInfo = '<CompanyGroup> <C ...

  5. Sqlserver中一直在用又经常被忽略的知识点一

    已经有快2个月没有更新博客了,实在是因为最近发生了太多的事情,辞了工作,在湘雅医院待了一个多月,然后又新换了工作...... 在平时的工作中,Sqlserver中许多知识点是经常用到的,但是有时候我们 ...

  6. sql操作知识点个人笔记(SQLServer篇)

    实际工作中,总会遇到一些常用的或不常用的sql,这些sql可能并没多少技术含量,但对我们本身而言,一个最大的问题就是很容易忘记.对我个人而言,以前常用的,过阵子之后再用到,发现不记得了.由此得出结论, ...

  7. sqlserver常用知识点备忘录(持续更新)

    背景 一个项目的开发,离不开数据库的相关操作,表/视图设计,存储过程,触发器等等数据库对象的操作是非常频繁的.有时候,我们会查找系统中类似的代码,然后复制/粘贴进行再进行相应的修改.本文的目的在于归纳 ...

  8. sqlserver的一些小知识点

    1.高效分页sql和储存过程 select top 每页条数 * from ( select ROW_NUMBER() over (order by id)as nid ,* from table01 ...

  9. sqlserver数据库知识点总结(转)

随机推荐

  1. Oracle- 初识

    我一直没用过ORACLE.今天总算装上了,说一下我装的过程,感觉还是有点折腾的. 一.我装的是ORACLE 9版本,从网上下载的总大小1.3G.是三个压缩包. 首先我解压三个压缩包后,使用UltraI ...

  2. GridControl 复合表头(多行标题)

    说明: 最好是通过编辑视图进行设计,后台编码有点麻烦. 例图:(上面的GC是后台编写 ,下面的是设计器设计) 后台代码编写: public void InitCtrl() { DevExpress.X ...

  3. [Openstack][Grizzly] Mysql删除僵尸实例

    由于某些原因,导致在通过nova delete删除虚拟机后,其task_state 一致处于deleting状态, 但是始终无法删除.由于虚拟机还没有分配到节点等信息,还没有拷贝镜像,所以可以直接从数 ...

  4. Oracle数据库编程:PL/SQL编程基础

    2.PL/SQL编程基础: PL/SQL块:        declare        定义部分        begin        执行部分        exception        异 ...

  5. 利用Splatting提交参数(Hash,哈希)

    $infos = @{} $infos.Path = 'c:\Windows' $infos.Recurse = $true $infos.Filter = '*.log' $infos.ErrorA ...

  6. 分布式助手Zookeeper(一)

    分布式助手Zookeeper(一)博客分类: Zookeeper   Zookeeper最早是Hadoop的一个子项目,主要为Hadoop生态系统中一些列组件提供统一的分布式协作服务,在2010年10 ...

  7. Linux crontab 命令格式与具体样例

    基本格式 : * * * * * command 分 时 日 月 周 命令 第1列表示分钟1-59 每分钟用*或者 */1表示 第2列表示小时1-23(0表示0点) 第3列表示日期1-31 第4列表示 ...

  8. mysql.cnf 配制文件详解

    代码如下: [client]port = 3306socket = /tmp/mysql.sock [mysqld]port = 3306socket = /tmp/mysql.sock basedi ...

  9. mysqldump 备份原理8

    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; http://www.cnblogs.com/lyhabc/p/38 ...

  10. web.xml配置文件 taglib

      web.xml的内容如下: <?xml version="1.0" encoding="UTF-8"?><web-app version= ...