数据类型及数据库操作

四、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位,最大存储数值为:9999.99
            double:浮点型,小数
            
        3.字符型
            char(M):固定长度的字符串类型      name char(5)        ‘1    '
            varchar(M):可变长度的字符串类型   name varchar(5)     '1'
            text:大的字符串类型,4G字符串
            blob:字节类型 
            
        4.日期
            date:日期类型,年月日   YYY-MM-DD 日期格式
            time:时间类型,时分秒   HH:mm:ss   时间格式
            year:年份,年           YYYY格式的年份值
            timestamp:年月日 时分秒,时间数  --2037年的某一个时刻:YYYMMDDhhmmss
            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 Definitin Language,DDL):用于管理和一定数据对象,包括数据库,数据表等。
        create:创建数据表和库
        drop:删除表对象
        alter:修改表结果
    数据操作语言(Data Manipulation Language,DML):用于操作数据库对象中所包含的数据
        insert:添加数据
        delete:删除数据
        update:修改数据
    数据查询语言(Data Query Language,DQL):用于查询数据库对象中所包含的数据
        select:查询数据
    事物控制语言(Transactin Control Language,TCL):是用来管理数据库的语言,事物回滚
        commit:提交事物
        rollback:事物回滚
        savepoint:事物节点
    数据控制语言:(Data Control Language,DCL):用来管理数据库中, 包括管理权限以及数据更改
        grant:授权
        revoke:收回权限

1.数据定义语言(DDL)

数据库的操作
<1>创建数据库
    语法格式:create databse [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;
数据表的操作
<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 varchaar(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|表达式,....);
    例如:
        create table teacher(
        id int,
        name varchar(32),
        note varchar(32),
        );
        insert into teacher (id,note) values('1',‘先挣它一个亿');
        insert into teacher value (2,'wangjianglin','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=‘小三’,note=‘ming nian zai zhao yi ge’ where id=1;//带条件修改,修改制定记录
        update teacher set name=‘xiaosi’;//不带条件  修改表中所有数据
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YEGE学AI算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值