SQL
登录mysql:
mysql -uroot -p
然后输入密码即可登录。
创建数据库:
create database 数据库名字 [库选项];
-
库选项:数据库相关属性
-
字符集:charset 字符集(若不指定,则采用DBMSM默认的)
-
校对集: collate 校对集
//每个数据库文件夹下都有一个opt文件,保存的是对应的数据库选项。
显示数据库:
show databases;
显示部分:
-
基本语法:
show databases like '条件';
-
_:匹配当前位置的单个字符
-
%:匹配指定位置多个字符
eg:
以my开头的数据库:‘my%’;
以m开头,后面第一个字母不确定,最后为database的数据库:‘m_database’;
获取以database结尾的数据库:‘%databse’;
选择数据库:
use 数据库名;
修改数据库:
-
基本语法:
alter database 数据库名 charset = 字符集;--修改数据库字符集
修改成功后,对应的opt文件就会修改。
删除数据库:
-
基本语法:
drop database 数据库名;
创建数据表:
create table mydatabase.calss(
name varchar(10)
);
use mydatabase;
create table teacher (
name varchar(10)
);
复制已有表结构:
-
基本语法:create table 新表名 like 表名 ;
//只要使用数据库.表名,就可以在任何数据库下访问其他数据库的表名。
-
生成的文件以frm为后缀名,frm代表结构文件。这个结构文件来自于innodb存储引擎,innodb存储引擎所有文件存储与外部的ibdata文件中。
显示所有表:
-
基本语法:
show tables; #显示所有表
-
匹配模式:
show tables like 'c%'; --显示以c开头的表
显示表结构:
-
本质含义:显示表中所有包含的字段信息(名字,类型,属性等);
-
Describe 表名;
Desc 表名;
show columns from 表名;
查看表创建语句:
-
show create table student;
设置表属性:
-
表属性指的就是表选项:engine,charset,collate。
-
基本语法:
alter table 表名 表选项 值;
修改表结构:
-
修改表名:
rename table 旧表名 to 新表名;
-
修改表选项:
alter table 表名 表选项 值;
-
新增字段:
alter table 表名 add 新字段名 列类型(属性) 位置[first/after];--默认是插入在最后
-
修改字段名:
-
alter table 表名 change 旧字段名 新字段名 字段类型 [列属性] [新位置];
-
修改字段类型(属性):
-
alter table 表名 modify 字段名 新类型 [新属性] [新位置];
-
删除字段:
-
alter table 表名 drop 字段名;
删除表结构:
-
基础语法:
drop table 表名[表名 2...];--可以同时删除多个数据表c
插入操作:
-
本质含义:将数据以SQL的形式存储到指定的数据表(字段)里。
-
基本语法:
insert into 表名 (字段列表) value (对应字段列表值);
查询操作:
-
查询表中全部数据:
select * from 表名;
-
查询表中部分字段:
select 字段列表 from 表名;
-
简单条件查询数据:
select 字段列表/* from 表名 where 字段名 = 值;
eg:获取年龄为三十岁的人的名字
select name from my_student where age = 30;
删除操作:
-
基本语法:
delete from 表名 [where 条件];--如果没有where条件,系统将默认删除该表所有数据
更新操作:
-
更新:将数据进行修改(通常是修改部分字段数据)
-
基本语法:
update 表名 set 字段名 = 新值[where 条件];--没有where条件,则将该字段全部数据改为统一值