MySql基础笔记
数据库连接
- 在命令行内输入:mysql -u root -p 回车,然后输入密码 ,回车即可进入
- 在命令行内输入: mysql -h localhost -P 3306 -u root -p 回车,然后输入密码,回车运行即可进入。
- (windows)可以找开始菜单,在mysql文件夹中找 MySQL,Command Line Client 启动,然后输入密码。
基本操作
- 显示所有的数据库文件(类似打开excel文件目录)
show databases
; - 创建数据库 (类似创建excel文件)
create database test
; - 使用某个数据库(相当于打开一个excel文件)
use test
; - 查看数据表(相当于看看有哪些 sheet)
show tables
; - 删除库(相当于删除excel)
drop database test
;
对表进行操作
- 创建表
create table [if not exists] 表名称 (
字段名1 列类型 [属性] [约束] [注释],
字段名2 列类型 [属性] [约束] [注释],
......
字段名n 列类型 [属性] [约束] [注释]
);
- 删除表
drop table (表名)
- 查看表的结构
desc (表名)
- 查看数据表
show tables
数据类型
- 数值类型
整型: 常用的有 int bigint
浮点型:常用的有 float double
- 字符串类型
char(m)
varchar(m) varchar(20) 表示20个字符
text
longtext :存个小说
- 日期类型
date 2019-8-3
datetime 2019-8-3 10:05:30
timestamp 时间戳
time 10:05:30
属性与约束
-
null 空
-
not null 不为空
-
default 默认值
-
unique key 唯一键 设置某个列的值都是唯一的 例如身份证号都是唯一的
-
primary key 主键 (自带唯一属性 ,not null 属性 一般数字都是自增的)
-
auto_increment :自增长 必须给主键设置,他的数值是不会回退的
-
foreign key :外键 减少冗余,与其他表连接
语法
constraint 你给外键取的名字 foreign key (你想引用到外键的列名称) references 参考表的表名(列名称且这个列名称是有主键属性)
更改表的结构
-
更改表的名称
alter Table OldName rename as newName
-
添加字段
alter Table 表名 add 字段名 列类型 [属性][约束]
-
删除字段
alter Table 表名称 drop 字段名
-
更改字段名称
alter Table 表名 change 旧字段名 新字段名 列类型 [属性][约束]
-
更改属性
alter Table 表名称 modity 字段名 列类型 [属性][约束]
-
增加外键
alter Table 表名 add constrant 外键名 foreign key 引用外键列名称 references 参考表的表名
插入数据
insert into [table_name] ([column],…) values(“name”,…);
删除数据
delete from [table_name] where [column_name] = " "
修改数据
update student set NCEE_grade = 390 where name = "刘备";
查找数据
select * from student order by NCEE_grade desc;