mysql 简单学习

mysql服务的命令行启动与关闭

启动mysql服务
net start mysql57
停止mysql服务
net stop mysql57

连接mysql
mysql -uroot -p123456

mysql -uroot -p
后输入密码

退出命令 exit或quit

连接服务器的mysql
mysql -h127.0.01 -uroot -p123456

目录结构

  • bin 放置一些可执行文件
  • docs 文档
  • include 包含(头)文件
  • lib 依赖库
  • share 用于存放字符集、语言等信息
1) 什么是SQL ?

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库
查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

2) SQL 的作用
  • 是所有关系型数据库的统一查询规范,
  • 不同的关系型数据库都支持SQL
  • 所有的关系型数据库都可以使用SQL
  • 不同数据库之间的SQL 有一些区别 方言

sql的通用语法

  1. SQL语句可以单行 或者 多行书写,以分号 结尾 ; (Sqlyog中可以不用写分号)
  2. 可以使用空格和缩进来增加语句的可读性。
  3. MySql中使用SQL不区分大小写,一般关键字大写,数据库名 表名列名 小写。
  4. 注释方式
    –空格 单行注释 /**/多行注释 # mysql特有的单行注释

sql的分类

  • 数据定义语言简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。
  • 数据操作语言简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。
  • 数据查询语言简称DQL(Data Query Language),用来查询数据库中表的记录。
  • 数据控制语言简称DCL(Date Control Language),用来定义数据库的访问权限和安全级别,及创建用户。(了解)

DDL操作数据库

#####创建数据库 ######

create database 数据库名; 创建指定名称的数据库。

create database 数据库名 character set
字符集;
创建指定名称的数据库,并且指定字符集(一般都
指定utf-8)

#####查看/选择数据库 ####

use 数据库名; 切换数据库

select database(); 查看当前正在使用的数据库

show databases; 查看Mysql中 都有哪些数据库

show create database 数据库名; 查看一个数据库的定义信息

#####修改数据库 ####

alter database 数据库名 character set 字符集; 数据库的字符集修改操作

#####删除数据库 ####
drop database 数据库名; 从MySql中永久的删除某个数据库

DDL操作数据标

#####Mysql常见的数据类型 ####

注意:MySQL中的 char类型与 varchar类型,都对应了 Java中的字符串类型,区别在于:

char类型是固定长度的: 根据定义的字符串长度分配足够的空间。
varchar类型是可变长度的: 只使用字符串长度所需的空间

#####创建表 ####

CREATE TABLE 表名( 

   字段名称1 字段类型(长度),

   字段名称2 字段类型 注意 最后一列不要加逗号 

);

快速创建一个表结构相同的表(复制表结构)

create table 新表明 like 旧表名 

#####查看表 ####

-- 查看当前数据库中的所有表名 
SHOW TABLES;

-- 显示当前数据表的结构 
DESC category; 

-- 查看创建表的SQL语句 
SHOW CREATE TABLE category;

#####删除表 ####

-- 直接删除 test1 表 
DROP TABLE test1; 
-- 先判断 再删除test2表 
DROP TABLE IF EXISTS test2;

#####修改表 ####

  • 修改表名

      rename table 旧表名 to 新表名
    
  • 修改表的字符集

      alter table 表名 character set 字符集
    
  • 向表中添加列

      alert table 表名 add 字段名称 字段类型
    
  • 修改表中列的 数据类型或长度,关键字 MODIFY

      lter table 表名 modify 字段名称 字段类型
    
  • 修改列名称 , 关键字 CHANGE

      alter table 表名 change 旧列名 新列名 类型(长度);
    
  • 删除列 ,关键字 DROP

      alter table 表名 drop 列名;
    

DML操作表中数据

插入数据
insert into 表名 (字段名1,字段名2...) values(字段值1,字段值2...);

#####注意 ####

  1. 值与字段必须要对应,个数相同&数据类型相同
  2. 值的数据大小,必须在字段指定的长度范围内
  3. varchar char date类型的值必须使用单引号,或者双引号 包裹。
  4. 如果要插入空值,可以忽略不写,或者插入null
  5. 如果插入指定字段的值,必须要上写列名
修改数据

语法格式1:不带条件的修改(慎用!!)

update 表名 set 列名 = 值;

语法格式2:带条件的修改

update 表名 set 列名 = 值 where 条件表达式:字段名 = 值 ;
删除数据

语法格式1:删除所有数据

  1. delete from 表名; 不推荐. 有多少条记录 就执行多少次删除操作. 效率低

     delete from 表名;
    
  2. truncate table 表名: 推荐. 先删除整张表, 然后再重新创建一张一模一样的表. 效率高

     truncate table student;
    

语法格式2: 指定条件 删除数据

delete from 表名 where 字段名 = 值;

DQL查询表中数据

简单查询

查询不会对数据库中的数据进行修改.只是一种显示数据的方式 SELECT

select 列名 from 表名
  • 别名查询,使用关键字 as
  • 使用去重关键字 distinct
  • 运算查询 (查询结果参与运算)

####条件查询 ####

如果查询语句中没有设置条件,就会查询所有的行信息,在实际应用中,一定要指定查询条件,对记录进行过滤

select 列名 from 表名 where 条件表达式 
* 先取出表中的每条数据,满足条件的数据就返回,不满足的就过滤掉
  • 比较运算符

< > <= >= = <> != 大于、小于、大于(小于)等于、不等于

BETWEEN …AND… 显示在某一区间的值
例如: 2000-10000之间: Between 2000 and 10000

IN(集合)集合表示多个值,使用逗号分隔,例如: name in (悟空,八戒)
in中的每个数据都会作为一次条件,只要满足条件就会显示

LIKE ‘%张%’ 模糊查询

IS NULL 查询某一列为NULL的值, 注: 不能写 = NULL

  • 逻辑运算符

And && 多个条件同时成立

Or || 多个条件任一成立

Not 不成立,取反。

  • 通配符

% 表示匹配任意多个字符串,
_ 表示匹配 一个字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值