SQL里面的char类型

--LEN(参数):获取字符的个数--不区分中英文
--DATALENGTH(参数):获取参数所占据的字节数
select LEN(‘中华人民共和国‘)
select LEN(‘abcd‘)
--
select datalength(‘中华人民共和国‘)
select datalength(‘abcd‘)
--查询表的数据
--char类型:char空间一旦分配,就不会再回收,多余的空间不会回收。但是如果存储的数据的数量大于指定的空间,那么就会报错。当需要存储的值的长度波动变动不大的时候可以使用char.--身份证号
select LEN(Char) from CharTest
select datalength(Char) from CharTest
--varchar:如果存储的内容小于分配的空间,那么多余的空间会自动回收,但是如果存储过量,就会报错、当长度波动大的时候使用--姓名 地址
select LEN(Varchar) from CharTest
select datalength(Varchar) from CharTest
--N---unicode字符。unique code:不管什么字符都占据两个字节 中文才考虑使用unicode字符
select LEN(Nchar) from CharTest
select datalength(Nchar) from CharTest
--nvarchar:
select LEN(NVarChar) from CharTest
select datalength(NVarChar) from CharTest

时间: 2024-12-17 06:59:17

SQL里面的char类型的相关文章

MS SQL四种Char类型的区别

--char:char类型空间一旦分配,就不会做自动收缩,就算没有存储满也需要占据指定分配的空间,如果存储过多,就会报错 --VarChar它会根据存储的内容的长度自动收缩,如果存储的内容小于指定的空间范围,那么多余的空间会收回.所以当存储的内容的长度波动较大的时候就考虑使用VarChar --n--代表是unicode字符,任何字符都占据两个字节空间 .当以后有中文字符的时候,就使用它. --NChar:NChar类型空间一旦分配,就不会做自动收缩,而且储存的任何字符都占据两个字节空间. --

Mysql数据库里面的String类型依照数字来排序以及按时间排序的sql语句

今天做项目的时候,遇到个小小的问题,在数据库中查询的时候,要用String类型的ID进行一下排序!(注:ID字段为 varchar 类型) 解决的方法: 如: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY -ID DESC 或者: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY (ID + 1) mysql时间格式化,按时间段查询MYSQL语句   2011-04-15 09:01:08| 

Mysql数据库里面的String类型按照数字来排序以及按时间排序的sql语句

今天做项目的时候,遇到个小小的问题,在数据库中查询的时候,要用String类型的ID进行一下排序!(注:ID字段为 varchar 类型) 解决办法: 如: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY -ID DESC 或者: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY (ID + 1) mysql时间格式化,按时间段查询MYSQL语句   2011-04-15 09:01:08| 

SQL里面的IF ELSE,没有{},使用begin...end

--IF ELSE--特点:--1.没有{},使用begin...end--2.有多重和嵌套--3.if必须有处理语句,如果只有一句,也可以不使用begin..end,只包含后面一句--4.没有true/false的概念,只能使用关系运算符的条件表达式--5.if后面的括号可以没有 --计算office平均分数并输出,如果平均分数超过60分输出成绩最高的三个学生的成绩,否则输出后三名的学生godeclare @subjectname nvarchar(50)='office' --科目名称dec

SQL里面的while 循环

--WHILE循环--特点:--1.没有True/false,要写条件表达式--2.也可以嵌套--3.也可以break,continue--4.没有{},需要使用begin..end --如果office不及格的人超过半数(考试题出难了),则给每个人增加2分,循环加,直到不及格的人数少于一半.godeclare @subjectname nvarchar(50)='office' --科目名称declare @subjectId int =(select SubjectId from Subje

SQL Server中char与varchar数据类型区别

在SQL Server中char类型的长度是不可变的,而varchar的长度是可变的 . 存入数据时: 如果数据类型为char时,当定义一个字段固定长度时,如果存进去数据长度小于char的长度,那么存入数据中数据所占的长度依然为定义字段长度,存入数据格式将变为存入数据加空格: 如果数据类型为varchar时,如果存进去数据长度小于varchar的长度,那么存入数据中数据所占的长度为存入数据长度. 取数据时: 如果数据类型为char时,取出数据需要用trim()去掉多余的空格: 如果数据类型为va

C#和Sql里【关于时间类型处理】

C#语言之“string格式的日期时间字符串转为DateTime类型”的方法 方法一:Convert.ToDateTime(string) string格式有要求,必须是yyyy-MM-dd hh:mm:ss ================================================ 方法二:Convert.ToDateTime(string, IFormatProvider) DateTime dt; DateTimeFormatInfo dtFormat = new S

SQL 里解析 XML 格式 字段 信息

DECLARE @ItemMessage XML DECLARE @ItemTable TABLE(No NVARCHAR(300),zje NVARCHAR(300),yfje NVARCHAR(300),bcje NVARCHAR(300),URL NVARCHAR(300),Remark NVARCHAR(300)) SET @ItemMessage=N'<List> <item> <No>SM-JG-201303-0189</No> <zje&

【转】Hibernate的getSQLQuery方法对char类型的解析问题

[转]Hibernate的getSQLQuery方法对char类型的解析问题 建立数据库: create table T_TEST1( id char (32), name varchar (255), other varchar (255), primary key(id) )insert into T_TEST1 values('2c9090792a18d6ab012a18d77e700001','sfasdf','asdf') insert into T_TEST1 values('2c9