最近准备丰富自己的知识库,零基础自学mySql,总结了以下实用的命令,并配有简单说明
1. 登录数据库
打开数据库:
在终端根文件夹下输入下面命令,如果不是根文件夹输入“cd ~”返回到根文件夹
/usr/local/mysql/bin/mysql -u root -p
密码是加密的,只需要正确输入回车就可以了,输入密码,进入数据库
2. 显示所有数据库
输入show databases;命令,显示所有数据库
3.查看数据库命令:
mysql> show databases;
会列出默认的所有的数据库
我们来创建我们自己的数据库,命令如下:
create database my_db;
use my_db;* 使用数据库*
进入我们刚刚创建的数据库,我们接着在该数据库中创建一张表。如下命令:
CREATE TABLE User
(
ID int NOT NULL AUTO_INCREMENT,
UserName varchar(255) NOT NULL,
Password varchar(255) NOT NULL,
PRIMARY KEY (ID)
);
参考下面地址:
/ ****** ****** ****** ****** ****** ****** ****** *****
- 1.创建数据库:
create database 数据库名称
2.查看所有数据库:
show databases;
3.打开进入数据库:
use 数据库名称
4.查看当前所在的数据库位置:
select database();
5.更改数据库名字 :
alter databases 数据库名称2;
6.更改数据库mydatabase的字符集 :
alter database 数据库名称 charset GBK;
7.删除数据库:
drop database 数据库名称;
//1. 创建表(personId为表名,设置了关键值则不能重复)
create table 表名 (personId int, name varchar(20), gender varchar(10), primary key(personId));
//2. 在表中添加新列
alter table 表名 add age int;
//3.在表中删除列
alter table 表名 drop 字段名;
//4.修改表中的旧字段为新字段
alter table 表名 change 旧字段名 新字段名 数据类型;
//5.将学生表中的number学号字段变成固定长度,且放到第二位。
alter table 表名 modify 字段名 数据类型 [位置];
例:alter table my_student modify number char(10) after id;
//6. 查看表结构信息
desc 表名;
//7. 删除表
drop table 表名;
//8. 复制表
create table 新表名 like 表名;
//9.删除数据表:一次性删除多个表
drop table 表名1,表名2,…… ;
select 100+90; //两个操作数都是数值型,则做正常运算 190
select '123'+90; //只要有一方为字符型,则试图将字符型转化为数值型
//若转换成功,则做正常运算 213
select 'mysql'+90;//若转换失败,则将字符型转换成0,结果为 90
select null+10; //只要有一方为null,结果必为null
//函数: ifnull(参数1,参数2)
若参数1不为null,则返回参数1
如参数1为null,则返回参数2
例如:
select ifnull(字段,0) as 别名 from 表名;
// 查看数据
select * from personInfo; // 查询全部
select * from personInfo where age = 35; // 条件查询
// 插入数据
insert into personInfo (personId, name, gender, age) values (1000, 'devZhang', "male", 35);
// 更新数据
update personInfo set age = 25,name = "uiChen",gender='female' where personId = 1001;
// 删除数据
delete from personInfo where age = 23; //删除
select name as 别名 from 表名; //查询
select distinct name from 表名; //去重查询distinct
select name from 表名 limit 5,2; //查询5条后2条 就是6,7条数据
select name from 表名 limit 5 offset 2; //从第2条后查5条 就是3,4,5,6,7数据
select count(name) from student; ///查询列数 count(*) count(1) 查所有
count() sum() 返回列的和 avg() 返回列的均值 max() 返回最大值 min()返回列的最小值
select name (包含集合函数) from 表名 group by 字段; //分组查询
select name as '姓名' ,count(*) from student group by name;
select name (包含集合函数) from 表名 group by 字段 having 条件;
update 表名 set name='王国三' where 条件; //更新数据
delete from 表名 where 条件; 删除数据 等同于truncate table 表名;
create table 表名1 select * from 表名2;///复制表2
后续继续上传............