关于MySQL中的数据类型

一、常见的数据类型有:

     varchar(最长255):【每个长度可以保存一个英文字符或一个汉字】

              可变长度字符串  比较智能 节省空间 会根据实际的数据长度动态分配空间

              优点:节省空间    缺点:需要动态分配空间,速度慢

     char(最长255):【每个长度可以保存一个英文字符或一个汉字】

              定长字符串 不管实际长度是多少,分配固定长度的空间去存储数据 使用不恰当会导致空间的浪费

               优点:不需要动态分配空间,速度快。   缺点:使用不当可能会导致空间浪费

   如何选择使用varchar和char?   性别字段长度固定应该选择使用char

                                         姓名字段长度不固定应该选择使用varchar

     int(最长11位):数字中的整数型,等同于java中的int

     bigint:数字中的长整型,等同于java中的long

     float:单精度浮点型数据

     double:双精度浮点型数据

     date:短日期类型         默认格式:%Y-%m-%d

     datetime:长日期类型        默认格式:%Y-%m-%d %h-%i-%s

     clob:字符大对象  最多可存储4G的字符串  比如存储一篇文章,一个简介或说明等超过255个字符的都需要采用clob字符大对象来存储。   Character Large OBject 简称 CLOB

     blob:二进制大对象  Binary Large OBject 简称 BLOB  专门用来存储图片、声音、视频等流媒体数据向blob类型的字段上插入数据的时候,需要使用IO流才行。

二、与数据类型相关的几个命令:

     format:数字格式化  用来格式化数字的  使用:format(数字,'$999,999')

           举例:在员工表中查询员工姓名及薪资,薪资显示加上千分位,并起别名为sal。

           select ename,format(sal,'$999,999') as sal from emp;                   str_to_date:将字符串varchar类型转换成date类型。

                语法格式:

                        str_to_date('字符串日期','日期格式')

                mysql中的日期格式:

                        %Y  年

                        %m  月

                        %d  日

                        %h  时

                        %i  分

                        %s  秒

         举例:将字符串日期'01-10-1999'转换成date类型:('日期格式'必须和前面的'字符串日期'格式一致.)

      str_to_date('01-10-1999','%d-%m-%Y')

           【好消息:如果把'字符串日期'写成这样的格式    %Y-%m-%d

               就不需要str_to_date函数来转换了,可以省略。实现自动类型转换。多数情况这样做】

     date_format:将date类型转换成具有一定格式的字符串varchar类型。(通常用在select查询时)

        语法格式:date_format(日期类型数据,'需要的日期格式')

        //查询时日期显示格式为月/日/年

        select id,name,date_format(birth,'%m/%d/%Y') as birth from t_user;

        如果不使用date_format函数,sql语句就会采用默认格式输出,其格式为'%Y-%m-%d'

        注意:

            数据库中有一条命名规范:所有的标识符全部小写,单词和单词之间使用下划线进行衔接。

     data与datatime

          date:短日期  默认格式:%Y-%m-%d

          datetime:长日期  默认格式:%Y-%m-%d %h-%i-%s

            创建表t_user:

            drop table if exists t_user;        #如果表t_user存在,就删除

            create table t_user(                             #创建表t_user

                id int,                                               #id字段是int类型

                name varchar(32),                          #name字段varchar类型

                birth date,                                       #birth字段data类型

                create_time datetime                     #create_time字段datatime类型

                );

              【在mysql中如何获取系统当前时间:使用now()函数即可】

          例如: 在下一行命令中now()代表系统当前时间。

       insert into t_user(id,name,birth,create_time) values(1,'lisi','1998-09-06',now());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值