一.插入数据

    插入数据语法:
    INSERT INTO 表名 [(字段名1, 字段名2…)] VALUES (值…) [, (值…), …];

    1. **插入表 ** **字段1 字段2 字段3 1 2 3**<br />**_INSERT INTO_** _**birds_wing_shaps**_ _wing_idwing_shapwing_example__**VALUES**_ (_'a','b','c'_);<br /> <br />** 修改按照字段顺序修改**<br />例如以表_** ****birds_wing_shaps**_为例<br />结果如下: 可以看到数据成功插入到字段中![7.png](https://cdn.nlark.com/yuque/0/2020/png/1056013/1587644954000-0726f416-0509-4a3b-a87a-b7e707b486ba.png#align=left&display=inline&height=382&margin=%5Bobject%20Object%5D&name=7.png&originHeight=470&originWidth=918&size=27670&status=done&style=none&width=746)<br />**还可以使用逗号插入第二条或多条,但是要注意字段属性是否设置唯一键,如果有(如此表 列名1)会报错,显示重复**

    1.插入单条数据的基本方式
    通过设置默认值可以不用插入特点数据,如果没有插入可以直接使用默认值
    注 :数据的基本单位都是按行来表示

    例 插入自定义的数据
    INSERT INTO birds_wing_shapswing_id,wing_shap,wing_exampleVALUES (‘z’,’x’,’s’),(‘v’,’e’,’n’);

    结果如下,
    6.png
    注意 **字段属性是否设置唯一键; 且按顺序插入
    如果属性设置允许NULL 则没有插入数据的字段为NULL或显示默认值
    如果设置了NOT NULL 但是默认值为NULL ,那么返回会报错并且提示默认值必须插曲一个值,且插入数据必须有对应的字段,否则报错提示长度不足

    2.插入的字段使用默认值
    假设有20段字段,19段设置NOT NULL 一段没有设置,而想要使用默认值

    INSERT INTO birds_wing_shaps__ VALUES (‘1’, ‘2’, ‘134’, DEFAULT);
    使用系统默认值,可以自动设置为默认值使代码简洁

    3.明确插入
    ! 一次只能插入一条数据的 不能多行 !
    INSERT INTO 表名 SET 字段名1=值1 字段名2=值2 ; //空格隔开

    INSERT INTO birds_wing_shaps SET wing_shap=’VL’ wing_id=’MM’ ;

    4.替换重复数据(插入数据操作)
    支持多条数据插入
    如果在唯一键的字段下遇到重复值, 则会删除数据表内原有的一行数据, 再将新数据插入;

    REPLACE INTO 表名 [(字段名…)]** VALUES_ (值1, 值2….) [, (值3…)]

    :替换bird_wing_shaps中的两个字段的值
    repa.png
    结果
    81.png
    注意 **如果字段设置了自增,替换后的值不会延续上面顺序,而是继续增加
    **

    二.查看建表语句

    系统使用默认建表语句
    【 表名】
    SHOW CREATE TABLE birds_wing_shaps;
    s.png

    CREATE TABLE birds_wing_shaps (
    wing_id char(10) COLLATE utf8_unicode_ci DEFAULT NULL,

    wing_shap char(25) COLLATE utf8_unicode_ci DEFAULT NULL**, : 设置字段默认值**

    wing_example text COLLATE utf8_unicode_ci,
    (被绑定的字段)
    UNIQUE KEY wing_id (wing_id) 设置唯一键
    )
    ENGINE=MyISAM :数据存储引擎 1. InnoDB 2.MyISAM

    DEFAULT CHARSET=utf8 设置字符集(编码) COLLATE=utf8_unicode_ci 设置排序方式

    三 . 修改表操作

    数据可备份 //在cmd命令下**

    1.备份整个数据库

    mysqldump —user=用户名’ -p 数据库名字 > 保存的地址(带文件名)
    微信图片_20200423212059.png
    输入密码就完成备份
    2.备份单个数据表

    mysqldump —user=用户名’ -p 数据库名字 数据表 > 保存的地址(带文件名)

    3.数据库还原

    mysql —user=用户名’ -p 数据库名字 <导入文件

    例如 将books表导入到新数据库test3
    ysql —user root -p test3<F:\phpstudy_pro\WWW\books.sql

    输入密码回车 再登陆数据库查看 成功!
    微信截图_20200423214953.png

    4. 改表语法

    ALTER TABLE 表名 操作;
    1. ADD COLUMN__ 添加一个字段

    最前面 或 后面
    ALTER TABLE 表名 ADD COLUMN 字段名 类型 [属性] [FIRST | AFTER 字段名]; ///[]可选

    2. DROP COLUMN 删除一个字段

    ALTER TABLE 表名 DROP COLUMN 字段名;

    3. CHANGE COLUMN 改变一个字段 重命名

    1. 删除字段所有的属性和类型还有名字, 然后重新设置一个新的字段名字 类型 属性;<br /> <br /> _**ALTER TABLE**_ 表名 _**CHANGE **__**COLUMN**_ 旧字段名 新字段名 类型 [属性];<br /> 只修改类型和属性 不改动旧字段<br />_**ALTER TABLE**_ 表名 _**CHANGE **__**COLUMN**_ 旧字段名 旧字段名 类型 [属性];

    4. MODIFY COLUMN 移动一个字段

    只修改字段 和change也一样 也会删除字段再新建一个字段(不写可选属性)
    ALTER TABLE 表名 MODIFY __COLUMN 新字段名 类型 [属性];

    修改并且移动
    单纯的移动: 字段名的类型和属性写成一样, 同时再写上位置;
    ALTER TABLE 表名 MODIFY __COLUMN 新字段名 类型 [属性] [FIRST | AFTER];
    例:
    修改名字 类型并移动到最上
    ALTER TABLE users MODIFY __COLUMN pass varchar(10) FIRST;
    修改名字 类型并移动到下面
    ALTER TABLE users MMODIFY __COLUMN pass varchar(10) AFTER;


    !注意 修改或是移动等即使数据类型一样也要填写否则报错