• MySQL数据库笔记二:数据类型及数据库操作


    三、MySQL数据库数据类型

    MySQL数据库中支持多种数据类型:数值型、字符型、日期型
    
    
        常用的数据类型:
            1.整型
                int:整形,存储整数
                int(M):M表示预期值。与存储大小和数值的范围无关。
    
                id  int                     10000
                id  int(3)  zerofill        10000
    
                zerofill 零填充        会在左侧补0
    
    
            2.浮点型
                float[(M,D)]:浮点型,存储小数
                    salary float(6,2):表示最多6位,小数占2位,最大存储数值为:9999.99
    
                double:浮点型,小数
    
            3.字符型
                char(M):固定长度的字符串类型        name char(5)      '1    '
                varchar(M):可变长度的字符串类型(推荐)     name varchar(5)   '1'
                text:大的字符串类型,4G字符串
                blob:字节类型
    
    
            4.日期
                date:日期类型,年月日       YYYY-MM-DD 日期格式
                time:时间类型,时分秒       HH:mm:ss    时间格式
                year:年份,年           YYYY格式的年份值
                timestamp:年月日 时分秒  ,时间戳 2037年的某一个时刻  YYYYMMDDhhmmss
                datetime:年月日 时分秒    YY-MM-DD hh:mm:ss
    
    
    
            5:整型
    
                tinyint         1       -128~127
                smallint        2       32767/65535
                int             4       21亿
                bigint          8       兆
                mediumint       3       八百多万/一千六百多万
    
    
    
        注意:选择合适的数据类型,是数据库优化的一部分。 short it better 原则。

    四、MySQL数据库中的数据的使用

    <1>SQL概述
        结构化查询语言,可以用于查询和修改关系数据库的语言。
    
        SQL语言,是数据库的核心语言,被ISO采纳为数据库语言的国际标准,几乎所有的数据库都支持SQL
    
    <2>组成
            数据定义语言(Data Definition Language,DDL):用于管理和一定数据对象,包括数据库,数据表等。
                create:创建数据库和表
                drop:删除表对象
                alter:修改表结果
    
            数据操作语言(Data Manipulation Language,DML):用于操作数据库对象中所包含的数据
                insert:添加数据
                delete:删除数据
                update:修改数据 
    
    
            数据查询语言(Data Query Language,DQL):用于查询数据库对象中所包含的数据
                select:查询数据
    
            事务控制语言(Transaction Control Language,TCL):包括提交事务、事务回滚
                commit:提交事务
                rollback:事务回滚
                savepoint:事务节点
    
            数据控制语言(Data Control Language,DCL):用来管理数据库中,包括管理权限以及数据更改
                grant:授权
                revoke:收回权限

      1.数据定义语言(DDL)

       数据库的操作

    <1>创建数据库
        语法格式: create database [if not exists] 数据库名称 [character set [=] 编码名称];
    
            例如:
                 create database tlxy;
                 create database if not exists tlxy;//忽视错误,显示警告
                 show warnings;//查看警告
                 create database db character set gbk;//指定创建的数据库的字符集
    
    
    <2>查询数据库
            语法格式:show databases;//查看所有的数据库
    
                    show create database 数据库名称;//查询某一个已经创建的数据库
    
    <3>修改数据库
            语法格式:
                alter database [if not exists] 数据库名称 [character set 新的编码名称]
    
            例如:
                alter database db character set = utf8;
    
    <4>删除数据库
            语法格式:
                drop database 数据库名称;
    
            例如:
                drop database db;//删除数据库db

       数据表的操作

    <1>创建数据表
        使用一个数据库:use 数据库名称;
        查看当前正在使用的数据库:select database();
    
    
        创建数据表语法:
            create table 表名(
                字段名 字段类型    约束,
                字段名 字段类型    约束,
                ........
    
            );
    
    
        例如: 创建用户表 
    
            create table user(
                uid int,
                username varchar(32),
                password varchar(32),
                birthday date,
                sex     enum('男','女')
            );          
    
    
    <2>查询数据表
            show tables;显示当前数据库中所有的数据表
            show columns from 表名;//查询某张表表结构
            desc 表名; //查询某张表表结构
    
    
    <3>修改数据表
        3.1 修改表名
            方式一:alter table 表名 rename [as|to] 新表名;
                例如:alter table user rename us;
            方式二:rename table 旧表名 to 新表名 [,旧表名 to 新表名,..........]
                例如:rename table us to user;
    
        3.2 添加列
            语法格式:
                alter table 表名 add [column] 列名 列定义 [first|after 列名];
            例如:
                 alter table user add sal double after password;//在指定的列后面添加新的列
                 alter table user add phone varchar(32); //默认在列的最后添加新的列
                 alter table user add hobby varchar(32) first;//在列的最前面添加新的列
    
        3.3 修改列定义
                语法格式:
                    alter table 表名 modify 列名 列定义 [first|after 列名];
    
                例如:
                     alter table user modify sex varchar(32) first;
    
        3.4 修改列名
                语法格式:
                    alter table 表名 change 列的列名 新的列名  新的列定义   [first|after 列名];
                例如:
                    alter table user change hobby address varchar(20) after sal;
    
        3.5 删除列
                语法格式:   
                    alter table 表名 drop [column] 列名;
                例如:
                    alter table user drop phone;
    
    <4>删除数据表
            语法格式:
                drop table 表名;
    
            例如:
                drop table user;

      2.数据操作语言(DML):用于操作数据库对象中所包含的数据

    基本查询数据的语句: select * from 表名;
    
    
    <1>插入操作
        语法格式:insert [into] 表名 [(列名1,列名2,.....)]    values|value (数值1|表达式,数值2|表达式,....);
    
        例如:
            insert into teacher (id,note) values ('1','先挣它一个亿.');
            insert into teacher value (2,'wangjianlin','xian zheng ta yi ge yi');
    
    <2>删除操作
        语法格式:
            delete from 表名 where 条件;
    
        例如:
            delete from teacher where id=1;//指定条件删除记录
            delete from teacher;//不带条件删除,删除所有的记录
    
    
        扩充:
            truncate table 表名; ---------- 清空表,会清空表中所有的数据
    
    
        面试题:
            delete删除与truncate 有什么区别??
    
                删除方式:
                    delete :一条一条的删除,不清清空 auto_increment 记录数
                    truncate 直接将表中的数据进行清空,  auto_increment自增将被重置,从新开始
    
    
    <3>修改操作
            语法格式:
                update 表名 set 列名1=数值,列名2=数值,..... where 条件;
    
    
            例如:
                update teacher set name='xiaosan',note='ming nian zai zhao yi ge' where id=1;//带条件修该,修改指定记录
    
                update teacher set name='xiaosi';//不带条件  修改表中所有数据
     
  • 相关阅读:
    android 5.1 WIFI图标上的感叹号及其解决办法
    Recovery和Charger模式下屏幕旋转180度
    Android屏幕旋转总结
    Spring MVC 数据校验@Valid
    Spring注解装配
    Spring简单的REST例子
    Spring怎么引入多个xml配置文件
    spring使用c3p0报错
    Spring+JTA+Atomikos+MyBatis分布式事务管理
    (2-3)Eureka详解
  • 原文地址:https://www.cnblogs.com/sl0309/p/11042923.html
Copyright © 2020-2023  润新知