MySQL——基本安装与使用

基本安装

  • 下载地址:https://dev.mysql.com/downloads/mysql/
  • 选择解压版本:mysql-5.7.21-winx64.zip
  • 以管理员身份打开cmd(除了安装服务不要以此身份打开)切换到解压目录下的bin目录下
  • 初始化数据所需文件以及获取一个临时的访问密码 : mysqld ‐‐initialize ‐‐user=mysql ‐‐console ;此时会出现一个临时密码,复制粘贴到别处后面会用到,解压目录下会出现一个data文件夹
  • 将MySQL安装为服务可以指定服务名称 :mysqld ‐‐install MySQL,服务安装成功,在计算机服务面板看到
  • 启动服务:net start MySQL,开发时可以设为手动启动,自动启动的话每次重启计算机都会打开
  • 通过用户名密码进入MySQL 操作环境 :mysql ‐u root ‐p ,会提示 Enter password,将刚才保存的密码复制进来,之后进入了,mysql操作环境
  • 设置数据库访问密码,一定要加分号 :mysql> set password for root@localhost = password('123456');
  • 验证:exit;先退出mysql环境,之后再登陆:mysql ‐u root ‐p ,输入刚才设置的密码,如果成功,执行:show databases;就会看到数据库了

基本使用

命令行操作

  • 打开cmd,切换到bin目录
  • 进入mysql操作环境:mysql ‐u root ‐p ,会提示你输入密码
  • 进入 MySQL 客户端的 REPL 环境过后,可以通过标准的 SQL 语句操作数据库
  • mysql> show databases;  ‐‐ 显示全部数据库
  • mysql> create database <db‐name>; ‐‐ 创建一个指定名称的数据库
  • mysql> use <db‐name>;  ‐‐ 使用一个数据库,相当于进入指定的数据库
  • mysql> show tables;  ‐‐ 显示当前数据库中有哪些表
  • mysql> create table <table‐name> (id int, name varchar(20), age int);  ‐‐ 创建一个指定名称的数据 表,并添加 3 个列
  • mysql> desc <table‐name>;  ‐‐ 查看指定表结构
  • mysql> source ./path/to/sql‐file.sql  ‐‐ 执行本地 SQL 文件中的 SQL 语句
  • mysql> drop table <table‐name>;  ‐‐ 删除一个指定名称的数据表
  • mysql> drop database <db‐name>;  ‐‐ 删除一个指定名称的数据库
  • mysql> exit|quit;  ‐‐ 退出数据库终

可视化工具

  • Navicat Premium:一款收费的可视化工具,下载地址:http://www.navicat.com.cn/download/navicat-premium,安装就是下一步下一步,但是安装必须要有Microsoft Visual C++ 2017 Runtime
  • 进入界面点击连接,选择mysql,然后对mysql数据库进行基本设置

  • char与varchar的区别:char是固定长度,varchar是自有长度可以不断调整,使用的时候注意字符集问题,默认是拉丁,只能输入英文数字,需要输入中文需要改成utf8,可以在表设计中更改,也可以在新建数据库的时候做一个设定,还可以进行数据库服务器全局配置

  • 设置服务器全局配置:在mysql目录下新建一个my.ini的文件,里面输入内容如下图,记住更改完配置之后一定要重启数据库服务,有关配置可以参考官网 https://dev.mysql.com/doc/refman/5.5/en/mysqld-option-tables.html,以及http://www.cnblogs.com/Ray-xujianguo/p/3322455.html

基本语句

注意

  • 在查询语句中,为了将查询列名与指令区别开,可以用反引号` `进行
  • 插入数据如果是字符型就必须用双引号或者单引号进行区别
  • 执行修改命令的时候,如果替换的数据与原表中数据一致是不会返回受影响的行数

查询

  • -- 查询数据
  • -- select 字段[, 字段2] from 表名
  • select id, name, birthday from users;
  • -- 通配 * 找到表中所有列
  • select * from users;
  • -- 查询每一行都会返回1,之前是查询列,现在是定死了就是1 
  • select 1 from users;

增加

  • -- 新增数据
  • insert into 表名 values (v1, va2, v3,.....);
  • -- 插入全部字段 
  • insert into users values (null, '王五', 0, '2020‐12‐12', '12312');
  • -- 指定字段
  • insert into users (name, gender, avatar) values ('王五', 0, '12312');

修改

  • -- 更改
  • update 表名 set field1=new-value1, field2=new-value2 [WHERE Clause]
  • -- 更新数据,指向全表
  • update users set name = '麻子', gender = 0
  • -- 更新数据,指向特定数据
  • update users set name = '麻子', gender= 0 where id = 1

删除

  • -- 删除
  • delete from 表名  [WHERE Clause]
  • -- 删除语句必须指定条件,将会把全表数据进行删除
  • delete from users where id = 1

筛选条件

  • -- where
  • delete from users where id = 6
  • -- and 表示并且
  • delete from users where id = 6 and gender = 0
  • -- or 表示或者
  • delete from users where id = 6 or gender = 0
  • -- > 判断大小
  • delete from users where id > 6
  • -- in 数据是否包含在此范围内
  • delete from users where id in (4, 5)

查询函数

  • -- count() 总行数,count(1) 比 count(*) 更高效
  • select count(1) from users where age > 12
  • -- max/min 最大值/最小值
  • select max(age) from users
  • -- avg() 平均值
  • select avg(age) from users

分页查询

  • -- limit 限制查询数据的数量
  • select * from users limit 2
  • -- limit 可以有两个参数,参数1表示跳过几个数据,参数2取几个数据
  • select * from users limt 2, 2
  • -- skip = (pageIndex - 1 )* size:查询指定页,那么跳过的数据就是当前页减去1,然后去乘以取出数据大小
posted @ 2018-03-29 05:34  var_obj  阅读(167)  评论(0编辑  收藏  举报