IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL —(Day01)DDL与DML基础 -> 正文阅读

[大数据]MySQL —(Day01)DDL与DML基础

一:链接MySQL?

连接mysql
?? ?1.开启服务?
?? ??? ?1.1 打开 我的电脑 右键 ?服务和应用程序 ?服务 ?运行
?? ??? ?
?? ??? ?1.2 管理员身份 运行 cmd?
?? ??? ? ? ? net start 服务名?? ?
?? ??? ??? ? net stop ?服务名
?? ??? ??? ??
?? ?2.连接mysql?
?? ??? ?2.1 dos命令连接
?? ??? ? ? ?2.1.1 cmd ?打开dos窗口
?? ??? ??? ? ? ? ?mysql -uroot -p123456
?? ??? ? ? ??
?? ??? ??? ?2.1.2 cmd 打开dos窗口
? ? ? ? ? ? ? ? ? mysql -uroot -p
?? ??? ??? ??? ? ?Enter password: ******
?? ??? ??? ??? ? ?
?? ??? ?2.2 直接使用mysql的客户端
?? ??? ?
?? ??? ?
?? ??? ?2.3 使用ide工具
?? ??? ?
?? ??? ?2.4 JDBC?

二:MySql的基本操作

一.登陆到mysql数据库
?? ?mysql -uroot -p123456
?? ?
二.常见操作
?? ?2.1 展示所有的数据库
?? ? show databases;
?? ?+--------------------+
?? ?| Database ? ? ? ? ? |
?? ?+--------------------+
?? ?| information_schema |
?? ?| mysql ? ? ? ? ? ? ?|
?? ?| performance_schema |
?? ?| sys ? ? ? ? ? ? ? ?|
?? ?+--------------------+
?? ?
?? ?2.2 创建数据库
?? ? ??
?? ? ? ?create database A;
?? ? ? ?Query OK, 1 row affected (0.00 sec) 成功
?? ??? ?
?? ?2.3 创建表
?? ? -- ?ERROR 1046 (3D000): No database selected
?? ? -- ?先有库 才能有表? ? 表必须创建在数据库中,先选择数据库在创建表
?? ??
?? ??
?? ?-- ?选择数据库?
?? ??? ? ?use 数据库名字;

?? ??? ? ?
?? ??? ? ?use A;
?? ??? ? ?Database changed
?? ??? ?-- ?varchar(20) 字符串
?? ??? ?
?? ??? ?create table 表名(
?? ??? ?
?? ??? ??? ?字段名 字段类型,
?? ??? ??? ?字段名 字段类型,
?? ??? ??? ?.....
?? ??? ??? ?最后字段 ?字段类型?
?? ??? ?
?? ??? ?);
?? ??? ?create table A1(
?? ??? ??? ?
?? ??? ??? ?id int,
?? ??? ??? ?sname varchar(20)
?? ??? ?);?? ??? ?
?? ??? ?create table a2(

?? ??? ??? ?id int,
?? ??? ??? ?age int,
?? ??? ??? ?salary double,
?? ??? ??? ?sname varchar(20)
?? ??? ?
?? ??? ?);
?? ?2.4?? ?-- 展示当前库内所有的表
?? ??? ?show tables;
?? ??? ?
?? ?2.5?? ?-- 向表内添加数据
?? ??? ?
?? ??? ?insert into 表名 values(字段值1,字段值2);
?? ??? ?
?? ??? ?insert into a1 values(1,'zs');
?? ??? ?insert into a1 values(2,'ls');
?? ??? ?
?? ??? ?insert into a2 values (1,20,456.7,'wanganshi');
?? ??? ?insert into a2 values (2,22,456.7,'lishangyin');
?? ??? ?
?? ?2.6?? ?-- 获取表内的数据
?? ??? ?
?? ??? ?select * from a1;-- 获取a1表内所有的数据
?? ??? ?select * from a1;
?? ??? ?+------+-------+
?? ??? ?| id ? | sname |
?? ??? ?+------+-------+
?? ??? ?| ? ?1 | zs ? ?|
?? ??? ?| ? ?2 | ls ? ?|
?? ??? ?+------+-------+
?? ??? ?
?? ??? ?select * from a2;
?? ??? ?+------+------+--------+------------+
?? ??? ?| id ? | age ?| salary | sname ? ? ?|
?? ??? ?+------+------+--------+------------+
?? ??? ?| ? ?1 | ? 20 | ?456.7 | wanganshi ?|
?? ??? ?| ? ?2 | ? 22 | ?456.7 | lishangyin |
?? ??? ?+------+------+--------+------------+
三.中文乱码
? ? ? ?insert into ? a1 values(3,"李白");
?? ? ??
?? ? ? -- 显示mysql的编码
?? ? ? ?show variables like 'character%';
?? ??? ?+--------------------------+-----------------------------------------+
?? ??? ?| Variable_name ? ? ? ? ? ?| Value ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
?? ??? ?+--------------------------+-----------------------------------------+
?? ??? ?| character_set_client ? ? | gbk ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
?? ??? ?| character_set_connection | gbk ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
?? ??? ?| character_set_database ? | latin1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
?? ??? ?| character_set_filesystem | binary ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
?? ??? ?| character_set_results ? ?| gbk ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
?? ??? ?| character_set_server ? ? | latin1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
?? ??? ?| character_set_system ? ? | utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?|
?? ??? ?| character_sets_dir ? ? ? | C:\install\mysql\server\share\charsets\ |
?? ??? ?+--------------------------+-----------------------------------------+
?? ? ??
?? ? ??
?? ?3.1解决一:在创建数据库时指定编码
?? ? ??
?? ? ? create database B charset 'utf8';
?? ? ??
?? ? ? use B;
?? ? ??
?? ??? ?create table B1(
?? ??? ??? ?
?? ??? ??? ?id int,
?? ??? ??? ?sname varchar(20)
?? ??? ?);
?? ??? ?
?? ??? ?insert into B1 values(1,"李白");
?? ??? ?
?? ??? ?select * from b1;
?? ? ??
?? ?3.2解决二:一劳永逸解决不能插入中文问题

? ? ? ? ? ? ? ? (找到安装目录"C:\install\mysql\data\my.ini")
?? ? ??
?? ? ? ?3.2.1 ?去掉 66 ?99 行 # ?在等号后面写 utf8
?? ??? ??? ? ?default-character-set=utf8
?? ??? ??? ? ?character-set-server=utf8
?? ??? ?3.2.2 关闭mysql 重启服务
? ? ? ? (此时乱码问题已经解决了但对于已经创建好的数据库,不受影响,需要新建数据库进行测试)
?? ??? ?
?? ??? ?3.2.3 再次创建数据库进行测试
?? ??? ?

?? ??? ? ?create database c;
?? ??? ? ?
?? ??? ? ?use c;
?? ??? ? ?create table C1(
?? ??? ??? ?
?? ??? ??? ?id int,
?? ??? ??? ?sname varchar(20)
?? ??? ??? ?);
?? ??? ??? ?
?? ??? ?insert into C1 values(1,"李白");
?? ??? ??
?? ? ?注意:
?? ??? ? ?对my.ini的修改 对以后创建的数据库有效 对之前的没有效果
?? ? ??

三:mysql的数据类型

一.整型数据类型?
?? ?int ?有符号 有正负 ??
?? ? ? ? 无符号 unsigned ?没有负数只有正数 ?最小值是0
?? ??? ??
?? ?int(数值) 宽度(需要和unsigned 一起使用,否则无意义)
?? ?
?? ?
?? ?zerofill: 当 数据长度不够宽度 补0 当超过宽度 那就存指定的值
?? ?
?? ?create database variabletype;
?? ?
?? ?use variabletype;

?? ?create table inttest(
?? ?
?? ??? ?id int,
?? ??? ?id2 int(4)
?? ?
?? ?);
?? ?
?? ?insert into inttest values(1,1);
?? ?insert into inttest values(10000,10000);

?? ?select * from inttest;
?? ?
?? ?create table inttest2(
?? ??? ?id int,?? ??? ?
?? ??? ?id2 int(4) unsigned zerofill -- id2 是无符号的值 宽度为4 不够宽度 用0补齐
?? ?);

?? ?
?? ?insert into inttest2 values(-1,-1); --最小值是0不能添加
?? ?
?? ?
?? ?insert into inttest2 values(-1,1);
?? ?
?? ?+------+------+
?? ?| id ? | id2 ?|
?? ?+------+------+
?? ?| ? -1 | 0001 |
?? ?+------+------+
?? ?
?? ?insert into inttest2 values(-10000,10000);
?? ?

三:浮点型

浮点类型:
?? ?create table doubletest(
?? ?
?? ??? ?height double,
?? ??? ?
?? ??? ?salary double(5,2)-- 最多有五个数字 其中两位小数
?? ?
?? ?);
?? ?
?? ?double: 能存最大的小数
?? ??? ??? ?如果小数位数过长 无法精确表示

?? ?
?? ?double(m,n): m 最多多少位 ? n 小数的个数
?? ??? ??? ??? ?当小数的位数过长 会舍弃并四舍五入

例如 double(5,2)表示总共有5位,小数部分占2位。
?? ?
?? ?
?? ?insert into doubletest values(3.14,6.28);
?? ?
?? ?insert into doubletest values(3.144,6.281);
?? ?
?? ?insert into doubletest values(33333.144,66666.281);
?? ?insert into doubletest values(33333.144,666.281);
?? ?insert into doubletest values(33333.144,666.289);
?? ?
?? ?insert into doubletest values(3.333333333333333333333333333,666.289);
?? ?
?? ?select * from doubletest;
?? ?
?? ?mysql> select * from doubletest;
?? ??? ?+--------------------+--------+
?? ??? ?| height ? ? ? ? ? ? | salary |
?? ??? ?+--------------------+--------+
?? ??? ?| ? ? ? ? ? ? ? 3.14 | ? 6.28 |
?? ??? ?| ? ? ? ? ? ? ?3.144 | ? 6.28 |
?? ??? ?| ? ? ? ? ?33333.144 | 666.28 |
?? ??? ?| ? ? ? ? ?33333.144 | 666.29 |
?? ??? ?| 3.3333333333333335 | 666.29 |
?? ??? ?+--------------------+--------+
?? ?
?? ?-- decimal 可以表示更精确的小数
? ? ? ? ? ? ??? ?decimal 没写宽度 只保留整数 且会对小数进行四舍五入

? ? ? ? ? ? ? ? (自己测试默认宽度是10? ?decimal(10,0))
?? ??? ??? ??? ?decimal(20,18) 一共有20位 18位是小数 ?小数位数不足 补0
?? ?create table decimaltest(
?? ?
?? ? ?id decimal,
?? ? ?
?? ? ?id2 decimal(20,18)
?? ?
?? ?);
?? ?
?? ?insert into decimaltest values(3.14,3.666);
?? ?insert into decimaltest values(3.64,3.666);
?? ?insert into decimaltest values(3.64,3.111111111111111111);
?? ?
?? ?select * from decimaltest;
?? ??? ?+------+----------------------+
?? ??? ?| id ? | id2 ? ? ? ? ? ? ? ? ?|
?? ??? ?+------+----------------------+
?? ??? ?| ? ?3 | 3.666000000000000000 |
?? ??? ?| ? ?4 | 3.666000000000000000 |
?? ??? ?| ? ?4 | 3.111111111111111111 |
?? ??? ?+------+----------------------+
?? ?
?? ?
bit:会将值转为二进制进行存储
? ? ?如果不写宽度 只能存一个值
?? ? ? ?写宽度 就可以存宽度个值

?? ??? ?
?? ??? ?进行读取时 使用 bin()进行解析

?? ?create table bittest(
?? ?
?? ??? ?id bit,
?? ??? ?id2 bit(3)
?? ?
?? ?);
?? ?

?? ?insert into bittest values(1,1);
?? ?insert into bittest values(1,20);
?? ?
?? ?
?? ?select bin(id),bin(id2) from bittest;

四:日期类型
?? ?


?? ?

7.日期类型

??
? create table datetest(
?? ?
?? ?y year,-- 年
?? ?d date,-- 年月日
?? ?t time,-- 时分秒
?? ?dt datetime, -- ? 年月日 时分秒
?? ?tt timestamp -- ? 年月日 时分秒 随着时区的变化 自动变化

? );
? -- 新增数据 now() 获取当前时间
? insert into datetest values(now(),now(),now(),now(),now());
??
? -- 获取结果
??
? select * from datetest;
? select * from datetest;
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| y ? ?| d ? ? ? ? ?| t ? ? ? ?| dt ? ? ? ? ? ? ? ? ?| tt ? ? ? ? ? ? ? ? ?|
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| 2021 | 2021-11-08 | 14:53:25 | 2021-11-08 14:53:25 | 2021-11-08 14:53:25 |
?? ?+------+------------+----------+---------------------+---------------------+
?? ?-- 更改时区到东九区
? ?set time_zone='+9:00';
? ?
? ?set time_zone='+8:00';
??
? ?select * from datetest;
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| y ? ?| d ? ? ? ? ?| t ? ? ? ?| dt ? ? ? ? ? ? ? ? ?| tt ? ? ? ? ? ? ? ? ?|
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| 2021 | 2021-11-08 | 14:53:25 | 2021-11-08 14:53:25 | 2021-11-08 15:53:25 |
?? ?+------+------------+----------+---------------------+---------------------+
?? ?
?? ?
?? ?insert into datetest values('2023','2024-2-8','19:38:46','2024-12-3 13:23:45','2025-12-3 13:23:45');
??
? ? select * from datetest;
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| y ? ?| d ? ? ? ? ?| t ? ? ? ?| dt ? ? ? ? ? ? ? ? ?| tt ? ? ? ? ? ? ? ? ?|
?? ?+------+------------+----------+---------------------+---------------------+
?? ?| 2021 | 2021-11-08 | 14:53:25 | 2021-11-08 14:53:25 | 2021-11-08 14:53:25 |
?? ?| 2023 | 2024-02-08 | 19:38:46 | 2024-12-03 13:23:45 | 2025-12-03 13:23:45 |
?? ?+------+------------+----------+---------------------+---------------------+
?? ?
?? ?select y '年',d '年月日',t '时分秒',dt '年月日时分秒' , tt '年月日时分秒与时区有关' from testdate;
?? ?
?? ??? ?+------+------------+----------+---------------------+------------------------+
?? ?| 年 ? | 年月日 ? ? | 时分秒 ? | 年月日时分秒 ? ? ? ?| 年月日时分秒与时区有关 |
?? ?+------+------------+----------+---------------------+------------------------+
?? ?| 2021 | 2021-11-08 | 20:51:44 | 2021-11-08 20:51:44 | 2021-11-08 20:51:44 ? ?|
?? ?+------+------------+----------+---------------------+-----------------------
?? ?

??

?五:字符类型/enum/set类型

一.创建表
?? ?/*
?? ? char 如果没有写宽度 那么只能存一个字符 ?固定长度字符串
?? ? varchar ?都是字符串 ? ? ? ? ? ? ? ? ?可变长度字符串
?? ?注意:
?? ? ?1.字符串既可以使用单引号 也可以使用 双引号
?? ? ?2.varchar 使用时必须指明宽度

?? ?*/
?? ?create table charTest(
?? ?
?? ??? ?sex char,
?? ??? ?s char(20),
?? ??? ?sname varchar(20)
?? ?
?? ?);
?? ?
?? ?insert into charTest values('男',"李白",'王安石');
?? ?insert into charTest values('男的',"李白",'王安石');
?? ?
?? ?create table charTest1(
?? ?
?? ??? ?sex char,
?? ??? ?s char(20),
?? ??? ?sname varchar(20)
?? ?
?? ?);
?? ?
?? ?
?? ?
?? ?-- enum 规定该字段的值仅有 有限的几个值
?? ?
?? ?create table enumtest(
?? ?
?? ??? ?id int,
?? ??? ?sname varchar(20),
?? ??? ?sex enum('男','女')

?? ?);
?? ?
?? ?insert into enumtest values(1,'李白','男');
?? ?insert into enumtest values(2,'李清照','女');
?? ?select * from enumtest;
?? ?+------+--------+------+
?? ?| id ? | sname ?| sex ?|
?? ?+------+--------+------+
?? ?| ? ?1 | 李白 ? | 男 ? |
?? ?| ? ?2 | 李清照 | 女 ? |
?? ?+------+--------+------+
?? ?2 rows in set (0.00 sec)
?? ?--insert into enumtest values(2,'李白','男的');
?? ?--ERROR 1265 (01000): Data truncated for column 'sex' at row 1
?? ?
?? ?-- set
?? ?-- 规定了字段的值仅有有限的几个?
?? ?-- 输入值的方式 '读书,登山'
?? ?-- 也可以采用 数字相加 9 2^0 开始是第一个值
?? ?-- set 里面最多有64个值

?? ?
?? ?create table settest(
?? ?
?? ??? ?id int,
?? ??? ?sname varchar(20),
?? ??? ?-- ? ? ????????? ? ?1 ? ? ? ?2? ? ? ? ?4 ? ?????????8 ? ? 16
?? ??? ?hobby set('读书','写代码','打游戏','登山','游泳')

?? ?);
?? ?
?? ?
?? ?insert into settest values(1,'张三','读书');
?? ?
?? ?insert into settest values(1,'张三','看报');-- 错误的 没有看报
?? ?
?? ?insert into settest values(1,'张三','读书','登山');

?? ?insert into settest values(1,'张三','读书,登山');
?? ?
?? ?insert into settest values(2,'李四',3);-- 读书,写代码
?? ?insert into settest values(2,'王安石',4);-- ?打游戏
?? ?insert into settest values(3,'安琪拉',2);
?? ?insert into settest values(4,'汉子哥',1);
?? ?
?? ?insert into settest values(5,'嬴政',6);
?? ?insert into settest values(5,'嬴政',15);
?? ?

六:MySql语法规范


/*
1. mysql 不区分大小写

展现mysql 核对规则?
? show variables like 'colla%'; ci 结尾 不区分大小写? (默认ci结尾)
?? ?+----------------------+-----------------+
?? ?| Variable_name ? ? ? ?| Value ? ? ? ? ? |
?? ?+----------------------+-----------------+
?? ?| collation_connection | gbk_chinese_ci ?|
?? ?| collation_database ? | utf8_general_ci |
?? ?| collation_server ? ? | utf8_general_ci |
?? ?+----------------------+-----------------+
2. 对数据库名 表名 字段名命名时 见名之意 26 英文 数字 下划线

3. 不要使用 关键字 ?如果非要使用 可以使用 飘号包裹 ``

4. 一个DBMS内 可以有多个数据库 ?但是各个数据库不能重名
? ?一个数据库内可以有多张表 ? ? 但是各个表不能重名
? ?一个表可以有多个字段 ? ? ? ?但是各个字段不能重名

5. 起别名?
?? ?字段的后面 as 别名的名称 ?as 可以省略
?? ? ?如果有特殊字符 需要使用 引号 将 别名进行包裹

?? ? ?
6.标点符号 必须是英文半角

7.注释
?? ?-- 单行注释
?? ?# ?单行注释
?? ?/* ?* / 多行注释
*/

create table c(

age int,

age double
);


create database a;

-- 获取datetest 中所有的数据
select * from datetest;

-- 获取datetest y dt 字段的数据
select y,dt from datetest;

select y as '年份' ,dt 年月日时分秒 from datetest;
-- ?如果有特殊字符 需要使用 引号 将 别名进行包裹
select y as '年份' ,dt '年月日 时分秒' from datetest;

七:Sql语言的分类

DDL: 数据库定义语言 ?创建库 创建表 ?删除库 删除表 ?添加字段 删除字段....

? ? ? ? ? ?(用于操作数据库和表的语言,并非直接操作数据)

DML:数据库操纵语言 对数据的 增删改

DQL: 数据库查询语言 ?查

DCL: 数据库控制语言 ?事务控制 ?权限管理
-- 展示所有的库
?? ?show databases;

DDL语言?

-- 创建数据库

? ?create database 数据库名;
? ?create database e;
?
-- 删除库

?? ?drop database 数据库名;

?? ?drop database b;
-- 创建表
? ??
?? ?create table ctest(id int,
?? ??? ?sname varchar(20)
?? ?);

-- 展示所有的表

? ?show tables;
-- 删除表
? ?
? ?drop table 表名; ??
? ?
? ?drop table ctest;
?-- 展示建表语句
?
?? ?show create table bittest;
?? ?
?? ?
?? ? CREATE TABLE `bittest` (
?? ? ?`id` bit(1) DEFAULT NULL,
?? ? ?`id2` bit(3) DEFAULT NULL
?? ?) ENGINE=InnoDB DEFAULT CHARSET=utf8
?

DDL下

-- 展现对表中字段的操作

-- 列的定义 : 列的名字+列的类型

create table ctest(

?? ?id int,
?? ?sname varchar(20)

);


desc ctest;
+-------+-------------+------+-----+---------+-------+
| Field | Type ? ? ? ?| Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id ? ?| int(11) ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
| sname | varchar(20) | YES ?| ? ? | NULL ? ?| ? ? ? |
+-------+-------------+------+-----+---------+-------+

-- 添加数据
insert into ctest values(1,"李白");


-- 查看数据

select * from ctest;

insert into ctest values(2,"李白",20);

-- 添加字段
-- ALTER ?TABLE tbl_name ADD ?列的定义 [FIRST | AFTER col_name ]
-- 默认添加到最后 也可以指定 添加到那个位置
alter table ctest add age int;

alter table ctest add salary double after sname;

desc ctest;
?? ?+--------+-------------+------+-----+---------+-------+
?? ?| Field ?| Type ? ? ? ?| Null | Key | Default | Extra |
?? ?+--------+-------------+------+-----+---------+-------+
?? ?| id ? ? | int(11) ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?| sname ?| varchar(20) | YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?| salary | double ? ? ?| YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?| age ? ?| int(11) ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?+--------+-------------+------+-----+---------+-------+

-- 删除字段
-- ALTER ?TABLE tbl_name DROP [COLUMN] col_name
-- 删除 sname 字段
alter table ctest drop sname;
-- 删除 age 字段
alter table ctest drop COLUMN age;

desc ctest;
+--------+---------+------+-----+---------+-------+
| Field ?| Type ? ?| Null | Key | Default | Extra |
+--------+---------+------+-----+---------+-------+
| id ? ? | int(11) | YES ?| ? ? | NULL ? ?| ? ? ? |
| salary | double ?| YES ?| ? ? | NULL ? ?| ? ? ? |
+--------+---------+------+-----+---------+-------+

-- 修改字段
-- 修改名字 及类型

-- ALTER ?TABLE tbl_name CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name]
alter table ctest change id id2 int(5) after salary;

alter table ctest change salary s2 double(5,3);

desc ctest;
?? ?+-------+-------------+------+-----+---------+-------+
?? ?| Field | Type ? ? ? ?| Null | Key | Default | Extra |
?? ?+-------+-------------+------+-----+---------+-------+
?? ?| s2 ? ?| double(5,3) | YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?| id2 ? | int(5) ? ? ?| YES ?| ? ? | NULL ? ?| ? ? ? |
?? ?+-------+-------------+------+-----+---------+-------+
-- 修改类型
-- ALTER TABLE tbl_name ?MODIFY column_definition [FIRST|AFTER col_name];
alter table ctest modify s2 double;

-- 修改表名
-- ALTER TABLE tbl_name ?RENAME [TO] new_tbl_name;

alter table ctest rename person;

DML(完成对表格数据的新增)(重要)

-- 一.完成对表格数据的新增

?? ??? ?create table dog(
?? ??? ??? ?id int,
?? ??? ??? ?dname varchar(20),
?? ??? ??? ?sex char
?? ??? ?);
?? ??? ?
?? ?-- insert into 表名 values (字段值1,字段值2......);?? ?
?? ?insert into dog values(1,"旺财",'公');
?? ?insert into dog values(2,"小黑",'公');
?? ?
?? ?-- 批量添加 ?
?? ?insert into dog values(3,"小花","母"),(4,"小白","母"),(5,"小红","母");
?? ?
?? ?-- 给指定的字段赋值
?? ?-- insert into 表名(字段名1,字段名2.。。。) values (字段值1,字段值2......)
?? ?insert into dog(id,sex)values(6,'公');
?? ?insert into dog(id,sex)values(7,'公'),(8,'公'),(9,'公');
?? ?
?? ?-- 插入给指定的字段赋值?
?? ?-- insert into 表名 set 字段名 = 字段值,字段名 = 字段值...;
?? ?
?? ?insert into dog set sex ='公';
?? ?insert into dog set dname ='小土';
?? ?
?? ?insert into dog set id = 10, dname = '来福';
?? ?
-- 二.更新

?? ?update 表名 ?set 字段名 = 字段值 ?[where] 筛选条件;
?? ?如果没有筛选条件 那么 修改整张表所有的数据
?? ?如果有筛选条件 那么 只修改满足筛选条件的数据
?? ?
?? ?-- 将 id =1 的 数据 名字改为 666
?? ?
?? ?update dog set dname = '666' where id ?=1;
?? ?-- 全部修改
?? ?update settest set id = 6;
??

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-09 19:37:22  更:2021-11-09 19:40:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 4:45:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码