mysql常用命令和记录
Posted m.z
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql常用命令和记录相关的知识,希望对你有一定的参考价值。
mysql版本:Ver 14.14 Distrib 5.7.17, for macos10.12 (x86_64) using EditLine wrapper
文档:http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html、http://www.runoob.com/mysql/mysql-index.html
mac下:
登陆:mysql -u root -p
查看有哪些数据库:show databases;
选择数据库:use 数据库名称,例如“use zml_db;”
创建一个数据库MYSQLDATA:mysql> Create DATABASE MYSQLDATA;
删除一个数据库:drop database <数据库名>
查询有哪些表:show tables;
创建一张表:Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
删除一张表:DROP TABLE MYTABLE;
清空一张表:delete from <表名>;truncate table <表名>; 区别请看http://blog.csdn.net/longshenlmj/article/details/18309529
显示表的结构:mysql> describe <表名>;
表中增加字段:alter table 表名 add (COLUMN) 字段名 类型 其他; 例如"alter table mytable add age int default \'0\';"
表中删除字段:alter table 表名 drop (COLUMN) 字段名;alter table mytable DROP COLUMN age;
表中修改字段(名、类型等):
alter table user MODIFY new1 VARCHAR(10); //修改一个字段的类型
alter table user CHANGE new1 new4 int; //修改一个字段的名称,此时一定要重新指定该字段的类型
更改表名:rename table 原表名 to 新表名;
基本的表数据的增删查改语句:
插入:insert into <表名> [( <字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )]
删除:delete from 表名 where 表达式
查询:select * from <表名> where ....
更新:update <表名> set sex="f" where name=\'hyq\';
分页查询:查询前几行数据。例如:查看表 MyClass 中前2行数据mysql> select * from MyClass order by id limit 0,2;
创建索引:CREATE INDEX index_name ON table_name (column_name);//还有其他集中创建方式,见http://wiki.jikexueyuan.com/project/sql/indexes.html
——注:数据量不大的情况下没必要添加索引,反而会降低增改删的效率
三种常用的MySQL建表语句:http://database.51cto.com/art/201011/234350.htm
便捷操作:
用文本方式将数据装入数据库表中(例如D:/mysql.txt):mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;
循环插入数据,采用存储过程来做,例如:
DROP PROCEDURE if exists myproc ; delimiter // create procedure myproc() begin declare num int; set num=1; while num < 100000 do insert into mytable (name,sex,age) values (CONCAT("zhang",num),"male",num); set num=num+1; end while; end// CALL myproc();
随机查询某张表中的一个数据:http://blog.csdn.net/mengxiangone/article/details/8093347,最终选择“SELECT * FROM users WHERE userId >= ((SELECT MAX(userId) FROM users)-(SELECT MIN(userId) FROM users)) * RAND() + (SELECT MIN(userId) FROM users) LIMIT 1”
建索引的几大原则:https://tech.meituan.com/mysql-index.html
经验案例:
模糊查询优化三种方式:http://blog.csdn.net/createment/article/details/50602529
以上是关于mysql常用命令和记录的主要内容,如果未能解决你的问题,请参考以下文章