美文网首页
Mac 环境下学习mysql

Mac 环境下学习mysql

作者: 下一个七年 | 来源:发表于2020-03-24 15:10 被阅读0次

连接数据库

1、系统偏好设置 > MySQL > start MySQL server,
开启本机的MySQL数据库服务
2、打开终端,输入如下命令:
/usr/local/MySQL/bin/mysql -u root -p
其中,root为数据库用户名
3、输入密码:
界面提示输入密码:
Enter password:
若为初次使用该数据库,则默认密码为空,直接回车即可进入mysql命令行;
若已设置密码,则输入数据库密码后,回车,即可进入mysql命令行。


进入数据库

SQL语句

1.数据库的操作

对数据库的操作
1、退出数据库命令: exit
2、查询所有的数据库: show databases; (注意:这里一定要加s和;)
3、创建数据库 create database 数据库的名称 [ character set 编码](可有可无,如果没有的话,就是这个服务器的默认编码)

  • 没有编码格式的:create database abintest;
  • 加编码的: create database my_datatest character set gbk; (创建gbk编码格式的数据库)


    创建数据库

    4、 查看当前数据库的编码: show create database 数据库名称;
    5、修改数据库的编码:alter database 数据库名称 character set 编码形式


    数据库编码
    6、删除数据库:drop database 数据库名称;
    删除数据库

7、修改数据库名称: rename database 旧的名称 to 新的数据库名称(好像不管用)还可以:进入mysql的文件夹,然后改一下数据库的文件夹名称(待测试)
8、切换数据库: use 数据库名称;
9、查看当前使用的数据库: select database();


查看当前使用数据库

2.表的操作

1.创建数据表:create table 数据表名称 (字段1 数据类型,字段2,字段3...);
数据类型有:int、varchar、double、bit、datatime
例子:create table employee( id int [primary key auto_incrament], name varchar(20),age int, salary double,sex varchar(5));

<font color="#ff0000">[primary key auto_incrament] 主键自增长 可选</font>
2.查看数据表: show tables;


查看数据表

3.查看数据表编码: show create table 数据表名
4.修改数据表编码:alter table 数据表名称 character set 编码;


修改数据表编码
5.查看数据表结构:desc 数据表名称;
查看数据表结构
6.修改数据表结构

(1)增加列,添加一个字段
alter table 数据表名称 add 字段名称 字段类型;


添加字段
(2)修改长度/类型/约束
alter table 数据表的名称 modify 字段名称 新的类型(新的长度);
修改字段类型
(3)修改列名(修改字段名称)
alter table 数据表名称 change 旧字段名 新的字段名 类型(长度)
修改字段名称
(4)删除列(删除字段)
alter table 数据表名称 drop 字段名称;
删除列

7.修改数据表名称:rename table 旧的数据表名称 to 新数据表名称;


修改数据表名称

8.主键约束
主键的约束就是为了保证一个列数据不重复。 用primary key修饰。一般来说,一个表只有一个主键
(1)添加主键(在现有字段上添加主键):alter table 数据表名称 modify 字段名称 类型 primary key;


添加主键
(2)新建字段的时候添加主键:alter table 数据表名称 add 字段名 字段类型 primary key;
例如:alter table person add id int primary key;

(3) 可以让主键自动增加auto_increment;
例如:alter table person add id int primary key auto_increment;


添加主键自增长

9.唯一约束,是为了保证数据不重复,与主键不同的是可以控制多个字段不重复。
例如:create table student(id int primary key auto_increment,name varchar(20),age int,stu_number varchar(20) unique, sex varchar(10));


唯一约束

10.非空约束 ,就是被约束的字段必须有数据,不能为空。
(1)创建数据表时,可以直接在字段类型后添加not null。
例如: create table student(id int primary key auto_increment,name varchar(20),age int not null,stu_number varchar(20) unique, sex varchar(10) not null);
(2)修改字段不能为空
alter table 数据表 modify 字段 字段名 not null;


字段不为空

11.删除主键约束/唯一约束/非空约束
(1)删除主键(注意:如果主键是自动增长的,会报错。需要先把自动增长删除)
alter table 表名 drop primary key;


删除报错

需要先修改自动增长
alter table student modify id int;


删除自动增长
删除主键
(2)删除唯一约束
alter table 表名 drop index 字段名称;
删除唯一约束

(3)删除非空约束, 直接删除即可
alter table 表名 modify 字段 字段类型;


删除非空约束
12.删除表
drop table 表名;
删除表

3.数据的操作

用person表和worker操作


person表
worker表

1.插入完整数据(增)(注意主键是自动增长的,第二次输入数据时可以不用设置值)
(1)insert into 表名(字段名称1,字段名称2...)values(值1,值2...);


插入两条数据

(2)如果插入全部数据,则可以省略前面的字段名称,
insert into 表名 values (值1,值2...);
(3)插入部分数据,直接输入字段和对应的值就可以了
insert into person (name,age) values (“哈哈”,20);
(4)插入中文
如果插入报错,就说明数据库是utf-8格式的,需要把数据库的编码格式修改为gbk。
在数据库的配置文件中修改,可以自行百度。

2.查询表中的数据(查)
(1)select * from 表名;

查询数据
(2)select * from 表名 [where 条件];
条件:=、<>、>=、<=、>、<、 is null、is not null、 and、or、like
例如: 年龄大于30的工人;
条件查询
例如:要把worker表中的薪水 5000到13000的人员都选出来
between ...in 前面的数字一定要小于后边的数字
筛选区间范围
例如:挑选出年龄为23、25、44的工人;
多个值筛选
(3)select 列名,列名 from 表名 [where 条件];
筛选出需要的列表
例如:筛选出worker表 的姓名和年龄;
筛选有用的列
(4)select 列名,列名... from 表名 order by 列名 asc(升序)| desc (降序);
排序有两种:升序和降序;
例如:
按照年龄排序,升序;
按照工资排序,降序;
排序
(5)select 列名 as 别名,列名 as 别名 from 表名;
别名,好处是可以根据我们自己的需要来显示字段
例如:worker表中显示姓名、年龄、薪资列
设置别名
(6)模糊查询
like 通配符。
例如: 查询worker表中的 name是abin开头的。
模糊查询
_ 占位符。一个代表一个字符长度;
例如: 查询worker表中的那么以abin开头的长度为2的人员;
select * from worker where like 'abin
_'; (两个下划线)
占位符查询

3.修改数据(改)对数据进行更新
(1) update 表名 set 字段=值 条件(where);


修改数据

(2) 当判断为空的时候,不能使用=null,应该用 is null;


更新判断null
4.删除表中的数据(删)
delete from 表名 条件
删除数据

5.函数

导入数据库:
1.打开终端输入 mysql -u root -p

2.show databases;

3.use 数据库名;

4.source 将sql文件拖入终端; (不要忘记后边的分号)

5.回车,即可导入成功

相关文章

网友评论

      本文标题:Mac 环境下学习mysql

      本文链接:https://www.haomeiwen.com/subject/jbbvyhtx.html