MySQL基础学习

数据库的基本概念

数据库(database,DB)

长期保存在计算机的存储设备上
,按照一定的规则组合在一起,可以被各种用户或者应用共享的数据集合。

数据库管理系统(database management system, DBMS)

指一种操作和管理数据库的大型软件,用于建立使用和维护数据库,

数据库软件应该为数据库管理系统,数据库是通过数据库管理创建和操作的

数据库:
存储维护和管理数据的结合

常见数据库

关系型数据库

Mysql

Oracle

Db2

Mssql

非关系型数据库(nosql)

Redis

Hbase

Mango

Sql的分类

DDL  
(data definition language):数据库定义语言

用来定义数据库对象:数据库,表,列

DML        (data manipulation
language)
数据库操作语言

用于定义数据库记录(数据), 对操作数据

DCL         (data
control  language) 数据控制语言

用于定义访问权限和安全级别

DQL (data Query language) 数据查询语言

DDL :操作数据库 ,表, 列

使用关键字
:create (创建),alter(修改), drop(删除)

操作数据库

创建

Create
database  库名 character  set 字符集 collate 核对

CREATE 
DATABASE mysql03;

CREATE DATABASE mysql104 CHARACTER SET gbk
COLLATE gbk_chinese_ci;

查询

查询当前数据库服务器:

SHOW DATABASES;

查看数据库的定义信息

SHOW CREATE DATABASE 表名;

修改mysql104数据库中的字符集

ALTER DATABASE 表名CHARACTER
SET 字符集;

删除

DROP DATABASE 表名;

其他

切换其他数据库

USE 表名

查看当前使用的数据库

Select database()

操作数据表

创建

Create table 表名(

字段1 字段类型

字段2 字段类型

)character set 字符集 collate 校对规则

Int:整型

Double:浮点型,

例如:double(5,2),最多5位,其中必须有2个小数

char:固定长度的字符串类型

char(10), “aaa”,占10位

varchar:可变长度字符串类型

varchar(10)  “aaa”,占3位,

text文本类,字符串

blob:字节类型

date:日期类型,格式:yyyy-MM-dd

time:时间类型,格式hh:mm:ss

timestamp:时间戳类型:yyyy-MM-dd
hh:mm:ss 会自动赋值

dateTime:日期时间类型: yyyy-MM-dd
hh:mm:ss

查看

Show tables

查看表中的字段信息

Desc 表名

添加列

ALTER TABLE stu ADD class CHAR(10);

修改列的信息

Alter table stu modify class varchar (50)

删除列

ALTER TABLE 表名DROP 列名;

修改表名

Rename table 表名 to new表名;

修改列名

Alter table tb-stu change 列名 to  new列名 属性

显示表的创建细节

Show create table 表名

修改字符集

Alter table 表名 character set 字符集

删除表

Drop table 表名

DML:操作表的数据

DML 是对表中的数据进行增 删 改的操作

Insert(插入)

Update(更新)

Delete (删除)

字符串
日期都是单引号

空值 null

插入 insert

INSERT 表名(列名,列名)VALUE (列值,列值);

一一对应:

INSERT stu VALUE (‘s001’,‘张三’,‘female’,‘55’);

INSERT stu VALUE (‘s002’,‘李四’,‘male’,‘44’);

INSERT stu VALUE (‘s003’,‘王五’,‘female’,‘33’);

INSERT stu VALUE (‘s004’,‘赵六’,‘female’,‘22’);

INSERT stu VALUE (‘s005’,‘孙七’,‘female’,‘11’);

INSERT stu VALUE (‘s006’,‘周八’,‘male’,NULL);

INSERT stu VALUE (‘s007’,‘吴九’,‘female’,NULL);

INSERT stu VALUE (‘s008’,‘郑十’,‘female’,‘26’);

修改操作

Update 表名 set 列名1=列值1 ,列名2=列值2 【where 列名=列值】

删除

删除表中某些行的数据

Delete from 表名 【where 列名=值】

Truncate table 表名

Delete 删除表中的数据,表在  可找回

Drop 
删除表,表没了

Truncate 
删除表中数据,表在,
不可找回

企业中一般不轻易删除数据
,使用一个布尔类型的字段,用false  表示 被delete了

字符集错误

查看数据库编码的具体信息

Show variables like ‘character%’

修改字符集

SET character_set_client =gbk

DQL(数据查询)

DQL语句不会对数据进行改变,而是让数据库返送结果集到客户端

查询返回结果不变:是一张虚拟表

语法

Select 列名 from  表名  where group by … having …order by …limit…

Select

列名   //要查询的列的名称

from

表名   //要查询的表的名称

【where …  //行条件,满足那些条件的行,我才是需要的

group by …//对结果进行分组

having …  
//对分组之后的数据进行过滤,与where功能类似

order by ….//对结果进行排序,asc/desc

limit offset_start ,row_count】 //对结果限定 ,从offset_start,读取row_count行

查看表中的列

SELECT * FROM stu;

查询指定列

SELECT sname,age FROM stu;

条件查询

介绍

条件查询就是在查询的时候给出where子句,按照一定的要求查询数据。

在where子句中可以使用运算符及关键字。

(1)=、!=、<> 、<、<=、>、>=

(2)between …
and ;

(3)in (set)

(4)and

(5)or

(6)not

And  =  <

查询是女的
且 小于40岁的

SELECT * FROM stu WHERE gender=‘female’ AND
age<40

Or not >=

查询不是女的
或者 年龄>=40岁的

SELECT * FROM stu WHERE NOT gender=‘female’
OR  age>=40

between … and ;  in
(set)

查询学号为s001,s002,s003, 或者年龄在10到20之间的

SELECT * FROM stu WHERE sid IN
(‘s001’,‘s002’,‘s003’) OR  age BETWEEN 10
AND 20;

Is !
<>

查询年龄是null, 或者不是女的

SELECT * FROM stu WHERE age IS NULL OR  gender !=‘female’;

SELECT * FROM stu WHERE age IS NULL OR  gender <>‘female’;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值