MySQL-基础

MySQL的启动、停止、重启指令

· 启动命令

sudo service mysql start

· 关闭命令

sudo service mysql stop

· 重启命令

sudo service mysql restart

· 查看状态

sudo service mysql status

ps -aux | grep ‘mysql’

 

MySQL的登录和退出

· 登录命令

mysql -h 主机地址 -u用户名 -p密码    

· 退出命令

exit/quit/ctrl+d

 

数据完整性

· 数据库是完整的业务单元,包含多张表,数据被存储在表中

· 表中为了更加准确的存储数据,保证数据正确有效,创建表时,为表添加一些强制性的验证,包括数据字段的类型,约束

 

数据类型

    · 通过查看帮助文档查阅所有支持的数据类型

    · 原则:够用就行,尽量使用取值范围小的,而不用大的,节省更多的存储空间

 

    · 常用的数据类型:

            · 整数       ----- int  bit

            · 小数       ----- decimal

            · 字符串    ----- varchar , char

            · 日期时间 ----- date,time,datetime

            · 枚举类型 ----- enum(‘男’,‘女’,‘保密’)default‘保密’

    

    · 特殊说明的类型:

            · decimal  表示浮点数 , 如decimal(5,2)表示共存5位数,小数占2位

            · char        表示固定的长度字符串,如char(3),如果填充'ab'时会补一下空格为'ab '

            · varchar   表示可变长度的字符串,如varchar(3),填充'ab'时就会存储'ab'

            · 字符串text表示存储大文本,当字符大于4000时推荐使用

            · 对于图片、音频、视频等文件。不存储数据库中,而是上传到某个服务器上,然后在表中存储这个文件的保存路径

约束

· 主键 primary key : 物理上存储的顺序

· 非空 not null : 此字段不允许填写空值

· 惟一 unique  : 此字段的值不允许重复

· 默认 default  :当不填写此值时会使用默认值,如果填写时以填写为准

· 外键 foreign  :对关系字段进行约束,当为关系字段填写时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常

· 说明:虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增、改、删、查)时都会降低数据库的性能

 

数据库的操作

 

· 查看所有数据库

show databases;

 

· 使用数据库

use 数据库名;

 

· 查看当前使用的数据库

select database();

 

· 创建数据库

create database 数据库名 charset=utf8;

create database 数据库名 ;                             ---默认拉丁文

 

· 删除数据库

drop database 数据库名; 

 

数据表的操作

 

· 查看当前数据库中所有表

show tables;

 

· 查看表结构

desc 数据表名;

 

· 创建表

create table 数据表名(字段 约束);

create table students (

    id int unsigned auto_increment primary key not null,

    name varchar(30),

    age tinyint unsigned default 0 ,

    high decimal(5,2),

    gender enum('男', '女','保密'),

    cls_id int unsigned default 0

 

);

· 修改表 - 添加字段

alter table 表名 add 列名 类型;

----> alter table students add address varcher(40);

 

alter table 表名 add 列名 类型及约束 after 字段名;

---->alter table students add birthday date after gender;

 

alter table 表名 add 列名 类型及约束 first;

----->alter table students add stu_id int unsigned first;

 

· 修改表-修改字段:重名版

alter table 表名 change 原名 新名 类型以及约束;

---->alter table students change high higher decrimal(5,2);

 

· 修改表-修改字段:不重名版

alter table 表名 modify 列名 类型及约束;

---->alter table students modify  birthday data;

 

· 修改表-删除字段

alter table 表名 drop 列名;

---->alter table students drop cls_id;

 

· 删除表

drop table 表名;

----> drop table classes;

 

重命名表

rename table 旧表名 to 新表名;

---->rename table students to student;

 

· 查看表的创建语句

show create table 表名;

----> show create table students;

 

· 查看表的数据

select * from 表名;

---->select * from students;

 

· 重命名表

rename table 旧表名 to 新表名

 

 

· 增删改查(curd)

curd: 创建create  更新update  读取 retrieve  删除delete

 

· 增加数据

----> 增加全部数据

insert into 数据表名 values(全部列的值);

 

----> 增加部分字段

insert into 数据表名 (字段1,字段2)values(值1,值2);

 

----> 插入多条

insert into 数据表名 values(全部列的值),(全部列的值),(全部列的值);

 

insert into 数据表名(字段1,字段2) values(值1,值2),(值1,值2),(值1,值2);

 

· 修改数据

update 数据表名 set xx=值,yy=值 where 条件;

---->update students set name'小李',age=12 where id=1;

 

· 删除数据

----delete from 数据表名 where 条件;  物理删除

 

----update 数据表名 set is_delete=1 where 条件;        逻辑删除

 

注意:修改或删除数据的时候一定要指定条件,否则可能造成所有数据被污染或者清空。

 

· 清空数据 (会把全表都给清空掉,并且自增主键从1开始)

 truncate table 数据表名;

 

· 查询数据

select * from 数据名;

select * from 数据名 where 条件;

select 字段 as 别名 from 数据名 where 条件;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值