首页 > 数据库技术 > 详细

mysql常用命令和记录

时间:2018-01-08 23:33:21      阅读:292      评论:0      收藏:0      [点我收藏+]


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常用命令和记录

原文:https://www.cnblogs.com/javac/p/8245452.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!