MySQL笔记

一、Mysql简介

MySQL是一个开源的关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于Oracle 旗下产品。

特点

  1. 免费、开源。
  2. 小巧,功能齐全。
  3. 使用便捷。
  4. 支持多种存储引擎。
  5. 可以运行于Linux、Windwos系统
  6. 适用于中小型网站。

二、mysql常用数据类型

整数:int、bigint(大整数—相当于long) 3个字节。

浮点数:float、double、decimal 8个字节。

时间类型:date(yyyy-mm-dd)、datetime(yyyy-mm-dd hh:mm:ss)、timestamp(yyyy-mm-dd hh:mm:ss) 4个字节。

文本字符串:char 、varchar。

数据类型选择

一般整数用int、浮点数用double、时间类型用datatime、字符串用varchar。

三、sql分类

在Mysql中sql分为四种。

DDL(数据定义语言–对数据库结构进行操作):drop、create、alter。

DML(数据操作语言–对表数据进行操作):insert、update、delete。

DQL(数据查询语言):select。

DCL(数据控制语言):grant、revoke、commit、rollback。

四、DDL操作

4.1、数据库的操作

#创建数据库
CREATE DATABASE mysql_study

#使用数据库
USE mysql_study

#查看所有数据库
SHOW DATABASES

#删除数据库
DROP DATABASE mysql_study

#查看数据库引擎 mysql默认数据库引擎为InnoDB
SHOW ENGINES

4.2、数据表的操作

#创建数据表 create table 表名字 (字段名 数据类型 约束条件 默认值),.....

CREATE TABLE t_user (
id INT (11),
NAME VARCHAR(20),
sex VARCHAR(2) 
)

#删除数据表
DROP TABLE t_user;

#设置主键约束 (主键是唯一的,不能为空值,可以结合外键用来描述不同数据表之间的关系)。
#语法1 字段名 数据类型 primary key 默认值
CREATE TABLE t_user (
id INT (11) PRIMARY KEY 
)
#语法2 primary key (需要设置为主键的字段) 注意:与上一个字段之间需要逗号隔开
CREATE TABLE t_user (
id INT (11)  ,
PRIMARY KEY(id)
)
#语法3 多字段联合主键 primary key(字段1,字段2.....)
CREATE TABLE t_user (
id INT (11)  ,
dept_id INT (11) ,
PRIMARY KEY(id,dept_id)
)

#外键约束  外键主要用来简历多个表之间的关系,可是一列或者多列。
# 语法1 constraint 外键名 foreign key (需要设置为外键的id) references 另一个表 (另一个表的主键)
CREATE TABLE t_dept (
id INT (11) PRIMARY KEY,
dept_name VARCHAR(20),
CONSTRAINT fk_user_id FOREIGN KEY (id) REFERENCES t_user(id)
)

#非空约束  就是字段插入数据的时候不能为空
#语法:字段名 数据类型 not null
CREATE TABLE t_test1 (
id INT (11) PRIMARY KEY NOT NULL
)

#唯一性约束 要求该列唯一 能出现一个空值 
#语法:字段名 数据类型 unique
CREATE TABLE t_test3 (
id INT (11) UNIQUE PRIMARY KEY 
)

#默认约束 设置字段默认值
#语法:字段名 数据类型 default 值
CREATE TABLE t_test4 (
id INT (11) UNIQUE PRIMARY KEY DEFAULT 4
)

#自增长 插入数据的时候不需要指定插入id会自动+1
#语法:字段名 数据类型 AUTO_INCREMENT
CREATE TABLE t_test5 (
id INT (11) UNIQUE PRIMARY KEY  AUTO_INCREMENT
)

#查看表结构
#语法:desc 表名
DESC t_user

#查看表详细结构
#语法:show create 表名
SHOW CREATE TABLE t_user

#修改表
#语法 alter table 需要操作的表名

#修改表名字
#语法:alter table 表名 rename 新的名字
ALTER TABLE t_user RENAME USER 

#修改表的字段类型
#语法:alter table 表名 modify 字段名 数据类型
ALTER TABLE t_user MODIFY dept_id BIGINT

#修改字段名
#语法:alter table 表名 change 字段名 新的字段名 数据类型

ALTER TABLE t_user CHANGE deptId dept_id BIGINT

#删除字段
#语法:ALTER TABLE 表名字 DROP 字段名
ALTER TABLE t_user DROP username

#更改表的存储引擎
#Mysql的引擎主要有MyISAM、InnoDB、MEMORY、BDB、FEDERATED.
#语法1:create table 表名字() ENGINE=INNODB DEFAULT CHARSET=gb2312
CREATE TABLE t_test6 (
id INT (11) UNIQUE PRIMARY KEY DEFAULT 4
)ENGINE=INNODB DEFAULT CHARSET=gb2312

#语法2:ALTER TABLE 表名字 ENGINE=引擎名字
ALTER TABLE t_test6 ENGINE=INNODB

#删除外键
#语法 ALTER TABLE 表名字 DROP FOREIGN KEY(外键名)
ALTER TABLE t_user DROP FOREIGN KEY(fk_user_id)

#删除表
#语法 drop table 表名字
DROP TABLE USER

五、DML操作

5.1、(insert)插入数据

#插入数据
#语法:insert into表名 values (值1,值2) 
#注意:值的类型要和字段类型对应,如果有自动增长的列需要指定列名添加,多条数据添加逗号隔开
INSERT INTO users(username) VALUES('张三')

#多条添加
INSERT INTO users(username) VALUES('王五'),('李四')


#将添加的结果保存到另一个表
#语法:INSERT INTO 插入的表名 (字段) select 查询的字段 from 查询的表名字
INSERT INTO users (username) SELECT username FROM users

5.2、(delete)删除数据

#删除表数据
#安装条件删除id为1的人 
#语法 delete from 表名字 where 条件
DELETE FROM users WHERE id=1

#删除整个表的数据
DELETE FROM users

5.3、(update) 修改数据

#按照条件修改
#语法:UPDATE 表名字 SET 列名1=值,列名2=值.... WHERE 条件
#修改id为1的项目
UPDATE users SET username='李四' WHERE id=1

#修改整个表某个字段所有的数据  (不推荐)
UPDATE users SET username='张三'

六、DQL操作

6.1、单表查询

语法:select 字段1,字段2 from 表名 或者视图 where 查询条件。

#查询所有  *代表所有
select * from user

#查询指定列名的数据
select username from user
</
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值