标签:view HERE student ini const 多表 ade unique 引擎
目录
https://dev.mysql.com/downloads/mysql/
mysqld --initialize-insecure
mysqld
mysql -u root -p
Enter password:输入密码
create database 数据库名;
create database db1;
drop database 数据库名;
drop database db1;
use 数据库名;
use db1;
create table 表名(
字段名 类型,
字段名 类型 [是否可以为空 null | not null],
字段名 类型 [默认值 default 默认值],
字段名 类型 [[自增 auto_increment] 主键 primary key], // auto_increment 和 primary key 必须同时使用,且每个表只能有一个auto_increment
[constraint 外键名] foreign key 从表(字段名称) references 主表(字段名称),
[primary key (字段1,字段2,....)]//设置主键,可以设置多个字段
[unique 索引名称 (字段名,...)]//设置唯一索引
.......);
示例:
create table t1(id int, name char(10));
create table t1(id int null, name char(10));
create table t3(id int auto_increment primary key, name char(10)) engine=innodb default charset=utf8;
create table t1(id int, name char(10)) engine=innodb default charset=utf8;//引擎为innodb 默认字符编码为utf8
//innodb 支持事务(原子性操作)
constraint fk_score_student foreign key score(student_id) references student(sid)
select 列 from 表名;
select * from t1;
select 列名 as 别名 from 表名;
select tname as "姓名" from teacher;
select 列名 from 表名 where 条件;
select * from t1 where name="张三";
select * from t1 where name like "张%";//查询姓名以张开头的人的所有信息
select * from t1 where name like "张_";//查询姓名以张开头的并且名只有一个字的人(例如张三,张四)的所有信息
select 列名 from 表名 limit 数量;//只显示查询的到前多少条
select * from t1 limit 10;// 只显示前十条
select 列名 from 表名 limit 起始值,数量;//只显示查询的从起始值开始的多少条信息
select * from t1 limit 5,10;// 只显示从第五条开始的十条信息
select count(*) as 数量 from 表名 group by 字段名;//分组
select gender,count(*) as "数量" from student group by gender;//按性别分组统计人数
select * from 表1,表2 where 关联条件; //多表查询
select * from course,teacher where course.teacher_id = teacher.tid;
select * from 表1 left join 表2 on 关联条件;// 多表查询
select * from course left join teacher on course.teacher_id = teacher.tid;
insert into 表名(字段名,字段名,.....)values(数据,数据),(数据,数据) //数据个数与字段名个数对应
insert into t1(id,name)values(1,"a");
insert into t1(字段1,字段2) select 字段1,字段2 from t2;
insert into t1(id,name) select id,name from t2;;
update 表名 set 更新内容 where 条件;
update t1 set id=3 where id=1;
alter table 表名 AUTO_INCREMENT=数值; //修改表的自增值
alter table t1 AUTO_INCREMENT=30;
delete from t1 where 条件;
delete from t1 where name='张三';
delete from 表名;//不会清空自增值
delete from t1;
truncate table 表名;//会清空自增值,速度更快
truncate table t1;
drop table 表名;
drop table t1;
show databases;
show tables;
desc 表名;
show create table 表名;
use mysql;
select user from user;
create user '用户名'@'可登陆的ip地址' identified by '密码';
示例:
create user 'a'@"localhost" identified by '123'; //创建一个名字叫a的账户,只允许本地登陆,密码123
create user 'b'@'192.168.1.1' identified by '123'; //创建一个名字叫b的账户,只允许ip为192.168.1.1登陆,密码123
create user 'c'@'192.168.%' identified by '123'; //创建一个名字叫c的账户,只允许ip为192.168.*.*的地址登陆,密码123
create user 'd'@'%' identified by '123'; //创建一个名字叫a的账户,允许所有ip登陆,密码123
grant 权限 on 数据库.表 to 用户@可登陆地址;
权限名 | 作用 |
---|---|
select | 查找权限 |
update | 更新权限 |
create view v1 as select * from teacher;//创建
alter view v1 as select * from student;//修改
drop view v1;//删除
create index 索引名 on 表名(字段名);
create index ix_name on user(username);//普通索引
create unique ix_name on user(username);//唯一索引
drop index ix_name on user;
show variables like "%query%"; // 查看有关查询的变量
设置
set global 参数;
set global slow_query_log = on;// 开启慢日志记录
set global long_query_time = 1;// 设置慢日志记录阈值
set global slow_query_log_file = "f:\\slow_query.conf"; //设置慢日志存储文件位置
set global log_queries_not_using_indexes = on; //设置没有命中索引记录
上一页,下一页实现
select * from t1 where id > 200000 limit 10;// 下一页
SELECT * FROM student WHERE sid < 200000 ORDER BY id DESC LIMIT 10;// 上一页
跳转到指定页数
SELECT * FROM student WHERE sid IN(SELECT sid FROM (SELECT e.sid FROM (SELECT sid FROM student WHERE sid > 上一次记录的页数 LIMIT (目标页数-记录页数)*每页个数 ) AS e LIMIT 每页个数) as t);
SELECT * FROM student WHERE sid IN(SELECT sid FROM (SELECT e.sid FROM (SELECT sid FROM student WHERE sid > 5000 LIMIT 30) AS e LIMIT 10) as t);
标签:view HERE student ini const 多表 ade unique 引擎
原文地址:https://www.cnblogs.com/changjiangwei/p/11891069.html