当前位置: 首页 > news >正文

JAVA入门到精通-第57讲-SQLserver数据类型

 
[关键字]用[ ]包起来
 
SQLserver数据类型:
非unicode编码:
在计算机世界,每一个字符都有编码的东西
unicode码的特点:
用两个字节表示一个字符(可以是英文字符,汉字)。
 
big5支持繁体;
iso-8859-1编码:支持欧洲文字编码;
gb2312支持中文汉字;
gbk可以支持更多的汉字;
邮件服务器,国际性的软件会涉及多种编码的问题,
不同国家的文字,是否支持文字;
 
char最大值能存8000个字符,能存4000个汉字;
非unicode编码,用两个字节 表示一个汉字;
 
char定长,会补全;
char(100)  表中aa后面会有98个空格;
 
varchar  变长;
varchcar中数据库会自动回收剩下的空间;
 
为什么还要char?
在这样情况下应当使用到char:
假设要设计一个数据库 ,这个数据库有一个字段是
学号,6位,定长;
定长应该毫不犹豫的选用char,
因为char的查询速度很快,varchar数据库中需要一个个匹配,
查询速度和效率比较慢;
 
 
SQLserver帮助文档:
 
 
字符超过了8000个,可以考虑用text或者ntext;
尽可能使用Unicode编码,ntext;
 
Unicode / 非Unicode 编码
Unicode编码的速度会更快;
nchar /nvarchar 和前面的最大区别是Unicode编码
Unicode编码无论是单个字母还是 汉字都占两个字节;
不确定大小,不超过4000字符,
有可能有汉字:nchar;
能用nchar就不用char;
 
 
 
 
bit: 0-1
慎用bit
 
------------------------------

表的管理--表名和列的命名规则

1、必需以字母,_开头

2、长度不能超过128个字符

3、不要使用sql server的保留字

4、只能使用如下字符A-Z,a-z,0-9,$,#,_等

 

表的管理--支持的数据类型

字符型

char 定长 最大8000字符(非unicode编码)

char(10)'小韩'前四个字符放'小韩',后添6个空格补全

varchar变长 最大8000字符(非unicode编码)

varchar(10)'小寒'sql server分配四个字符,这样可以节省空间

ntext可变长度Unicode数据的最大长度为2的30次方-1(1,073,741,823)个字符

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

区别:

1、text是字节格式存储英文的,也可以存中文但有时候会显示成乱码

2、ntext是多字节格式存储unicode的,也就是存储各种文字用的。

在什么时候使用char型而不使用varchar,在知道字段定长固定时就使用char

 

字符型

nchar 定长 最大4000字符(unicode编码)

nchar(10)'小韩'前四个字符放'小韩',后添6个空格补全

nvarchar 变长 最大4000字符(unicode编码)

nvarchar(10)'小寒'sql server分配四个字符,这样可以节省空间

特别说明:

1、一般带有汉字的字段用nvarchar,全英文或符号的用varchar,因为nvarchar为unicode字符集,该类型的字段无论是单个字母还是单个汉字都占两个字节,而varchar,字母占一个字节,汉字占两个,nvarchar处理汉字或其它unicode字符集的速度要比varchar字段快。

2、如果有一些特殊字符在nvarchar中没有的,如日文的某些名片,那当然只能选合适的代码页用varchar了,而且这些特有语言特有的字符转换到nvarchar会消失

 

表的管理--支持的数据类型

数字型

1、bit 范围 0到1

2、int 范围 负的2的31次方到正的 2的31次方-1

3、bigint 范围 负的2的63次方到正的 2的63次方-1

4、float 存放小数,不推荐使用

5、numeric 小数

强烈建议 如果要去存放小数最好使用numeric

 

 
 
 
 
 
 
 



转载于:https://www.cnblogs.com/xuxaut-558/p/10035710.html

相关文章:

  • 利用keepalived实现高可用nginx(修改正)
  • iPhone XS JavaScript性能飙升背后的秘密
  • Java 基础语法
  • 变频电源是什么,变频电源的基础知识的认识
  • springboot配置Druid数据源
  • 红帽高级总监谈OpenJDK的未来:Java的未来从未如此光明
  • 如何设置计算机IP地址
  • expect接收命令行传递的参数并设置为变量和打印变量的值
  • rsync同步数据---把左边的文件全部拷贝到右边
  • 用简单代码看卷积组块发展
  • [译]前端离线指南(上)
  • 在应用开发中,网易云音乐如何兼顾质量和效益
  • 高级软件工程第八次作业:“两只小熊队”团队作业-5
  • JS基础(一)dom小实例
  • GitHub文件的克隆与上传
  • #Java异常处理
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  • ES6 ...操作符
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • golang中接口赋值与方法集
  • iOS小技巧之UIImagePickerController实现头像选择
  • JSDuck 与 AngularJS 融合技巧
  • MYSQL 的 IF 函数
  • passportjs 源码分析
  • Protobuf3语言指南
  • socket.io+express实现聊天室的思考(三)
  • Theano - 导数
  • Vue组件定义
  • yii2权限控制rbac之rule详细讲解
  • 机器学习中为什么要做归一化normalization
  • 基于游标的分页接口实现
  • 力扣(LeetCode)21
  • 马上搞懂 GeoJSON
  • 排序算法学习笔记
  • 设计模式走一遍---观察者模式
  • 突破自己的技术思维
  • 微信开放平台全网发布【失败】的几点排查方法
  • 想使用 MongoDB ,你应该了解这8个方面!
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 交换综合实验一
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​VRRP 虚拟路由冗余协议(华为)
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • #Linux(make工具和makefile文件以及makefile语法)
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (C++17) optional的使用
  • (MATLAB)第五章-矩阵运算
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (二)windows配置JDK环境
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (原)Matlab的svmtrain和svmclassify
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)