常用的关系型数据库:
·Oracle
·Microsoft Server
·Mysql
·SQLite
常用的非关系型数据库:
·MongoDB
·Redis
SQL语言主要分为:
DQL:数据查询语言,用于对数据进行查询,(select)
DML:数据操作语言,对数据进行增加,修改,删除,(insert,update,dalete)
TPL:事务处理语言,对事务进行处理,(begin transaction,commit,rollback)
DCL:数据控制语言,进行授权与权限回收,(grant,revoke)
DDL:数据定义语言,进行数据库吗,表的管理(create,drop)
MySQL数据库的特点:
1.MySQL是开源的
2.MySQL支出大型的数据库
3.MySQL使用标准的SQL数据语言形式
4.MySQL可以安装在不同的操作系统,提供多种编程语言的接口
MySQL服务端常用操作指令:
·查看MySQL的服务状态
sudo service mysql status
·停止MySQL服务:
sudo service mysql stop
·启动MySQL服务:
sudo service mysql start
·重启MySQL服务:
sudo service mysql restart
MySQL客户端常用操作指令:
MySQL客户端连接服务端:
mysql -uroot -p
MySQL客户端退出:
quit 或 exit 或ctrl+d
MySQL数据库操作SQL语句:
·查看所有数据库:
show databases;
·创建数据库:
create database 数据库名 charset=utf8;
例:
create database python charset=utf8;
·使用数据库:
use 数据库名;
·查看当前使用的数据库:
select batabase();
·删除数据库:
drop database 数据库名;
例:
drop database python;
MySQL表结构操作的SQL语句:
·查看当前数据库中所有表
show tables;
·创建表:
cerate table 表名(字段名 数据类型 可选约束条件) 例 create table students( id int unsigned primary key auto_increment not null, name varchar(20) not null, age tinyint unsigned default 0, height decimal(5,2), gender enum(‘男‘,‘女’,‘未知’) );
·修改表-添加字段:
alter table 表名 add 列名 类型 约束;
例:
alter table student add birthday datetime;
·修改表-修改字段类型:(modify只能修改字段类型或者约束,不能修改字段名)
alter table 表名 modify 列名 类型 约束; 例: alter table students modify birthday daye not null;
·修改表-修改字段名和字段类型:(change既能对字段重命名又能修改字段类型还能修改约束)
alter table 表名 change 原名 新名 类型及约束; 例: alter table students change birthday birth datetime not null;
·修改表-删除字段:
alter table 表名 drop 列名;
例:
alter table students drop birthday;
·查看创表的SQL语句:
show create table 表名;
例:
show create table students;
·查看创库的SQL语句:
show create database 数据库名;
例:
show create database mytest;
·删除表:
dorp table 表名;
例:
drop table students;
表数据操作的SQL语句
·查询数据
select * from 表名; 例 select * from students; select 列1,列2··· from biaoming;
例 select id,name from students;
·添加数据(说明:1.主键是自动增长,但是在全列插入时需要占位,通常使用空值(0或者null或者default)
2.在全列插入时,如果字段列有默认只可以使用default来占位,插入后的数据就是之前设置的默认值)
# 1.全列插入 值的顺序与表结构字段顺序完全一一对应 inster into 表名 values(...) 例: inster into students values(0,‘xx‘,default,default,‘男‘); # 2.部分插入 值的顺序与给出的列顺序对应 inster into 表名(列1....)values(值1,....) 例: inster into students (name,age)values(‘王小二‘,15’); # 3.全列多行插入 inster into 表名 values(值1,....) 例: inster into students values(0,‘张飞‘,55,1.75,‘男’),(0,‘关羽’,58,1.85,‘男’); # 4.部分列多行插入 inster into 表名(列1,...)values(值1,....) 例: inster into students (name,height) values(‘刘备‘,1.8).(‘曹操’,1.75);
·修改数据
update 表名 set 列1=值,列2=值2,。。。where 条件 例 update students set age=18,gender=‘女‘ where id =6;
·删除数据
#物理删除
delete from 表名 where 条件 例: delete from students where id=5;
#逻辑删除
alter table students add isdelete bit default 0;
update students set isdelete=1 where id=5;
MySQL数据类型和约束
·常用数据类型:
·整数:int,bit
·小数:decimal
·字符串:varchar,char
·日期:date,time,datetime
·枚举类型:(enum)
·常用数据约束:
原文:https://www.cnblogs.com/yzl666/p/11057919.html