精华内容
下载资源
问答
  • char类型定义字段,是定长,n值介于1 与 2000 之间,默认单位是byte,一般用于存储数字或字符。如果存 储内容没有达到设定长度会默认在后面补上空格。如果超出了设定长度,会截取指定长度,并且char...

    数据库字符类型比较

    1、char(n)

        char类型定义的字段,是定长,n的值介于1 与 2000 之间,默认单位是byte,一般用于存储数字或字符。如果存
    储的内容没有达到设定的长度会默认在后面补上空格。如果超出了设定的长度,会截取指定的长度,并且char类型存储的
    数据使用所以效率会比较高,但不足的地方是存储的数据长度没有达到指定空间会浪费空间。
    

    2、varchar(n)

       varchar类型是可变的且非unicode编码,n的值介于1与8000 之间,默认单位是byte,一般可以用于存储数字和
    字符,如果存储汉字在utf-8编码下会占用3个字节。varchar类型的实际长度是它的值的实际长度+1,这一个字节用
    于保存实际使用了多大的长度。存储空间效率上会比char更好,使用效率上char更好。
    

    3、nvarchar

      nvarchar类型是可变的unicode编码,n的值介于1到4000之间,默认单位是char,一般多用于存储中文。而对于带
    了'N'的前缀类型支持unicode字符集,目的就是为了解决字符集不兼容的问题而产生的,在unicode字符集它所有的字
    符都用两个字节表示,即英文字符也是用两个字节表示。所以nvarchar字节的存储大小是所输入字符个数的两倍。因此
    在存储字符的时候会对存储空间有浪费。
    

    总结

     对于三种的字符类型,一般来说,如果含有中文字符,用nvarchar,如果纯英文和数字,用char/varchar
    
    展开全文
  • 若输入字符小于指定长度时,它会在后面补空值。若你输入字符大于指定长度时,它会截去超出字符。其中1个汉字占2个字节,1个字母或数字占1个字节。 varchar(n) 非 Unicode 字符数据,长...

    char(n)

    非 Unicode 字符数据,长度固定,效率较varchar高,输入数据必须是一个长度介于 1 和 8,000 字节之间的数值(这是因为n只能取在1和8000之间,否则报错)。若输入的字符小于指定长度时,它会在后面补空值。若你输入的字符大于指定长度时,它会截去超出的字符。其中1个汉字占2个字节,1个字母或数字占1个字节。

    varchar(n)

    非 Unicode 字符数据,长度可变,效率较char低。以字节作存储单位,输入数据必须是一个长度介于 1 和 8,000 字节之间的数值(同理)。存储大小为输入数据的字节的实际长度,而不是n个字节。其中1个汉字占2个字节,1个字母或数字占1个字节。

    nchar(n)

    Unicode 字符数据,长度固定。输入的数据必须是一个长度介于1与4000字符之间的数值(同理)。若输入的字符小于指定长度时,它会在后面补空值。若你输入的字符大于指定长度时,它会截去超出的字符。字节的存储大小是所输入字符个数的两倍。其中汉字和字母数字均占2个字节。

    nvarchar(n)

    Unicode 字符数据,长度可变。以字符为存储单位,输入的数据必须是一个长度介于1与4000字符之间的数值(同理)。字节的存储大小是所输入字符个数的两倍。其中汉字和字母数字均占2个字节。

    text

    非Unicode数据,长度可变,以字符为存储单位,最大长度为2^31-1(2,147,483,647)个字符。text无默认值,后面无需指定长度。

    ntext

    差别同上。

    总结:

    1.若是仅有字母和数字的数据,选择char、varchar,若是汉字和字母数字组合,可选择nchar、nvarchar。这里的目的是为了节省空间。

    2.若定长的数据则选择char、nchar,不定长的可选择varchar、nvarchar。同样这里也为了节省空间。

    ps:以下是百度百科关于Unicode的部分解释,希望对理解文章有所帮助。

    Unicode(中文名统一码、也称万国码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

     

    展开全文
  •   在一次数据处理过程中,发现 有几条数据不能直接存储到pgsql 中,mysql 清洗数据,最后落地pgsql中, 通过报错 该数据字段中 存在ckar(0) ... replace(concat('1',char(0),'2'),char(0),'$') --替换char(0),后面的

      在一次数据处理过程中,发现 有几条数据不能直接存储到pgsql 中,mysql 清洗数据,最后落地pgsql中, 通过报错 该数据字段中 存在ckar(0) 字符.
       经过百度 Google 发现 ,如果字符串中包含了 char(0) 的字符,字符后面内容是显示不出来的

    --示例
    select 
        concat('1',char(0),'2'), --隐藏了数字2
        replace(concat('1',char(0),'2'),char(0),'$') --替换char(0),后面的数字显示出来了
    ;
    
    
    SELECT
    	 real_name, --原字段数据查询显示
    	 replace(ifnull(real_name,null),char(0),'$') as real_name, --替换了char(0),之后显示的数据
    	 SUBSTRING_INDEX(real_name,char(0),1) as real_name, --截取char(0)之前的数据
    	 LENGTH(real_name),  --截取之前的字符长度
    	 LENGTH(SUBSTRING_INDEX(real_name,char(0),1)) --处理数据之后的长度
    FROM labourer where id = 4611857465692091119
    
    
    

    在这里插入图片描述
    在这里插入图片描述

    • hive中处理包含char(0)字段数据
    
    select 
    	real_name,
    	substring_index(real_name,chr(0),1) 
    from 
    	ads_gx_project_attendance_detail_transition
    where length(trim(real_name))>8;
    
    
    • 结果
      在这里插入图片描述
    展开全文
  • 数据库管理—Mysql数据库1、常用数据类型2、查看数据库结构①进入数据库 ...decimal(5,2):有效长度数字,小数点后面有2位,指定长度数组 2、查看数据库结构 ①进入数据库 mysql -uroot -p123 -u :连接数据库

    1、常用的数据类型

    • int:整形(定义整数类型数据)
    • float:单精度浮点,4字节32位,准确到小数点后六位
    • double:双精度浮点,8字节64位
    • char:固定长度的字符类型,定义字符类数据
    • varchar:可变长度的字符类型
    • text:文本
    • image:图片
    • decimal(5,2):有效长度数字,小数点后面有2位,指定长度数组

    2、查看数据库结构

    ①进入数据库

    mysql -uroot -p123
    -u :连接数据库的用户名
    -p :后面跟的是连接数据库的密码(不可以有空格)
    

    在这里插入图片描述

    ②数据库信息

    show databases;
    一定要加上分号结尾
    

    在这里插入图片描述

    ③数据库里表的信息

    use 数据库名;
    show tables;
    

    在这里插入图片描述

    ④数据表的结构(字段)

    describe [数据库.]表名   
    或
    desc [数据库.]表名 
    

    在这里插入图片描述

    3、SQL概述

    ①SQL语言

    • Structured Query Language 的缩写,即结构化查询语言
    • 关系型数据库的标准语言
    • 用于维护管理数据库
      • 包括数据查询、数据更新、访问控制、对象管理等功能

    ②SQL分类

    • DDL:数据定义语言,用于创建数据库对象,如库、表、索引等
    • DML:数据操纵语言,用于对表中的数据进行管理
    • DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
    • DCL:数据控制语言,用于设置或者更改数据库用户或角色权限

    4、 DDL

    ①创建数据库

    创建数据库
    create database 数据库名; 
    
    创建数据表
    create table 表名(字段1 数据类型,字段2 数据类型,....,[primary key(主键名)]);
    

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    ②删除指定数据表

    use 数据库名;
    drop table 表名;
    

    在这里插入图片描述

    ③删除指定数据库

    drop table 数据库名;
    

    在这里插入图片描述

    5、DML管理表中的数据记录

    ①插入新数据:insert

    insert into 表名(字段1,字段2[,...]) values(字段1的值,字段2的值,...);
    
    字段中,可使用 password('密码') ,能够使用加密型密码
    

    在这里插入图片描述
    在这里插入图片描述

    ②修改或更新原有数据:update

    update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
    

    在这里插入图片描述

    ③删除不需要的数据:delete

    delete from 表名 [where 条件表达式];
    

    在这里插入图片描述

    6、DQL 查询数据记录:select

    select 字段名1,字段名2[,...] from 表名 [where 条件表达式];
    
    select * from 表名;                #显示全部
    select 字段1,字段2 from 表名;       #显示字段1和字段2  
    select 字段1 from 表名\G;           #以列表形式竖向显示
    select * from 表名 info limit 2;   #只显示头2行
    select * from 表名 info limit 2,3; #显示第2行后的前3行
    

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    7、修改表名和表结构:alter

    ①修改表名

    alter table 旧表名 rename 新表名;
    

    在这里插入图片描述

    ②扩展表结构

    alter table 表名 add address varchar(50) default '地址不详';
    

    在这里插入图片描述

    ③修改字段名、添加唯一键

    alter table 表名 change 旧列名 新列名 数据类型 [unique key];
    
    #change 可修改字段名、数据类型、约束等所有项
    
    唯一键:唯一,但可以为空(空值只能出现一次)
    
    主键包含唯一键的部分属性
    唯一键不能完全作为主键
    

    在这里插入图片描述

    ④删除字段、主键

    alter table 表名 drop 字段名;
    

    在这里插入图片描述

    ⑤添加字段

    alter table 表名 add 字段名;
    
    展开全文
  • 数据库基础

    2014-01-15 11:28:47
    数据库是一系列数据的集合,是...char 是字符,后面的数字表示几个字符。varchar 也表示字符,不过比 char 灵活,当用 char 时,如果字符不够规定的字符,后面会用空格补齐,取出数据时,长度就是规定的字符,而 varcha
  • 对Oracle数据库的一些基本总结 1.Oracle数据类型 ... S表示小数点后面的位数 例如数字666.33 可以被定义为number(5,2) 1.2、CHAR CHAR表示固定长度的字符串,定义为CHAR(M)形式。M表示占用的字节...
  • 数据库的数据类型

    2012-11-04 14:40:15
    numeric(p,b)定点数,由p位数字(不包括符号,小数点)组成,小数点后面有d为数字 real决定于机器精度浮点数 doule Precision决定机器精度双精度浮点数 float(n)浮点数,精度至少为n date日期,包含
  • Oracle中to_char,to_date

    2016-10-13 15:46:39
    1.1 ...TO_NUMBER 将字符转化为数字(使用少,后面遇到再补充)1.1.1使用TO_CHAR函数处理数字 : TO_CHAR(number, '格式') TO_CHAR(salary,’$99,999.99’); 使用TO_CHAR函数处理日期 : TO_CHAR
  • MySQL数据库管理

    2021-04-07 15:51:04
    MySQL数据库管理 数据库–>数据表–>行(记录):用来描述一个对象信息 ...decimal(5,2) :5个有效长度数字,小数点后面有2位 --------查看数据库结构-------- 1.查看当前服务器中的数据库 SHOW DATAB
  • 数据库 面试宝典

    2021-06-15 10:24:22
    数据库 一、where与having WHERE用于行过滤。 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与聚合函数一起使用。 二、字符串与日期,数字之间相互转化 到字符串:to_char();到日期:to_date();到数字:To_...
  • MySQL数据库的数据类型详解(01)

    千次阅读 多人点赞 2018-10-05 11:16:27
    Mysql数据类型主要分为三类:...注:数据类型支持附加参数,例如:float(7,3),7代表显示数值不能超过7,3表示小数点后面有三位数字; 1.字符串类型详解 .字符串类型可分为3类,普通文本字符串类型(char...
  • 文章目录 一、MySQL数据库管理 数据库–>数据表–>行(记录) :用来描述-一个对象信息 ...decimal (5,2) : 5个有效长度数字,小数点后面有2位 三、查看数据库结构 1、查看当前服务器中的数据库 SHOW DATABASES
  • number :表示整数和浮点数 –number(6)表示6位数字的 整数number(6,2) 表示6位数字的小数,小数点后面两位,前面4位 date :日期格式,oracle 默认格式为:”dd-mm-yy” Timestamp:时间戳,精确度比较高日期类型 ...
  • System.Int32,在msdn上给出的解释是:表示32位有符号的整数。指二进制为16位。 十进制表示值介于 -2,147,483,648 到 +2,147,483,647之间的有符号整数。...text,ntext或,image定义后面的数字都是指向text,ntext或im...
  • 数据库数据类型

    2020-11-22 19:28:27
    都是与java类型一一对应。 1.数值类型 ①.整型:tinyint(1字节,八位二进制,范围0-255) ,smallint(2字节,范围大 ),int (或integer),bigint;...②.varchar(3)是可变长,不够话会在后面加空格,但是
  • //‘小明’占用4个字符,后面添加6个空格 varchar2 变长,最大字符4000。 varchar(20) ;//'小明',oracle分配4个字符来存储。 clob(character large object) 字符型大对象,最大4G。 2.数字型 number ...
  • # 数据库数据类型

    2018-12-02 08:15:21
    数字数据类型 整数数据类型 bigint int smallint tinyint decimal,numeric(高精度小数类型...char后面跟上长度,占用固定字节,适用范围更大) Varchar(后面也需要跟长度,占用字节不固定) Test(后面不...
  • mysql数据库如何设置字段长度

    千次阅读 2020-01-05 01:03:13
    1.关于char和varchar char是定长字符,varchar是变长字符。 在mysql4.0版本之前,...在mysql5.0版本之后,char和varchar后面的长度表示一个字符,一个汉字、英文字母、数字或者符号,都是一个字符。 2.关于数字...
  • 数据库系统概念笔记 CH3(上) 第三章 SQL SQL数据定义 数据库关系集合必须由数据定义语言(DDL)指定给系统 SQL支持多种数据类型,包括...numeric(p,d):定点数,p位数字,d位在小数点后面 real,double precision:...
  • oracle数据库常用操作

    2015-12-18 22:58:54
    -S表示小数点后面的位数 如工资这个字段的定义:salary NUMBER(6,2)表示salary列中的数据,整数位最大为4位,小数位最大数为2位,也就是最大取值:9999.99 CHAR表示固定长度的字符类型,经常被定义成CHAR(N)的形式,...
  • DDL( Data definition language )数据定义语言:一、常用数据类型: varchar:可变字符串类型; char:定长字符串;...number(6,2) 表示6位数字的小数,小数点后面两位,前面4位 date :日期格式(7字节),or
  • //3306指你当前数据库的端口号,student指你指定哪个数据库名字 String user = "root"; //root是你用户名 String password = "esoft"; //esoft你的数据库密码 */ connection conn = DriverManager.get...
  • 目录1 数据类型2 查询条件 1 数据类型 数据类型 含义 ...CHAR(n),CHARACTER(n) 长度为n定长字符串 ...最大长度为n变长字符串 ...定点数,由p位数字(不包括括号、小数点)组成,小数点后面有d位数字
  • 在介绍这些SQL语言之前,先...后面的数字表示此类型的字段长度 数值型: TINYINT 1 ,SMALLINT 2,MEDIUMINT 3 ,INT 4,BIGINT 8,DECIMAL,FLOAT 4,DOUBLE 8,BIT 字符串型 CHAR,VARCHAR,BINARY,VBI
  • char(10):如果输入字符串为“Avi”,则该字符串后追加七个空格十七达到10个字符串长度。 varchar(10):支持最大字符串长度。如果输入字符串为“Avi”,则不会补充空格。 numeric(p,d):这个数能存储p位数字,d...
  • 目录   基本数据类型 创建表 修改表操作 删除表操作 ...NCHAR CHAR 区别在于 NCHAR存储2000个字符,而CHAR只能存储1000个字符 ...VARCHAR2 NVARCHAR 可变...Number类型 Number(p,s) p有效数字,s小数点后面的位...
  • 后面的数字表示此类型的字段长度   数值型: TINYINT 1 ,SMALLINT 2,MEDIUMINT 3 ,INT 4,BIGINT 8,DECIMAL,FLOAT 4,DOUBLE 8,BIT   字符串型 CHAR,VARCHAR,BINARY,VBINA
  • 开开心心写程序,程序出错,出错又出错。。。。。。。。。...这样的数据库语句,apply_id是varchar(32) 而后面很明显是数字 这样查出结果是。。。。   一堆值,实际上,我只要一个值,...

空空如也

空空如也

1 2 3 4 5
收藏数 84
精华内容 33
关键字:

数据库char后面的数字