mysql数据库基础知识_MySQL数据库基础知识

MySQL数据库基础知识

1.数据库系统(database system)

数据库系统是计算机系统中一种专门管理数组资源的系统,数据库存储的是一组或多组经过处理后的数据,管理这个数据库的软件成为数据库管理系统。

组成:

数据库(database)   存数据的

数据库管理系统(database managment system) 管理数据库

MySQL数据库作用:

• 1) 持久保存

• 2) 方便查询并提取满足条件的数据, 数据访问速度快

• 3) 处理并发访问

• 4) 权限管理

2.数据库系统分类:

关系型数据库 : MySQL、SQLServer、oracle、db2、informix、sysbase

非关系型数据库:redis、 MogoDB

3.开发中常用的数据库

IBM:DB2

甲骨文:Oracle MySQL

Microsoft:SQL Server Access等等

4.数据库在动态网站中有什么地位?

1、动态网站是对数据进行操作。浏览网站的时候会发现网页内容变化,页面的布局主体没有变化。

2、WEB系统的开发基本都离不开数据库,所谓的动态网站是基于数据库开发的系统,最主要的是围绕数据库来写程序(业务逻辑)。

5.MySQL和mysql有什么区别:

MySQL指的是完整的数据库系统。

mysql指的是一个叫mysql的客户端程序。

6.MySQL数据库的结构:

数据库->数据表->字段(多个字段组成了一行数据)

数据库:存放信息的文件夹

数据库里面有一个一个的excel文件(数据表)

数据表里面的数据是有数据行和数据列构成

所看到的一行一行的数据是由一个或者多个字段组成的

7.SQL:为了和MySQL进行交互,需要使用一种叫SQL(结构化查询语言)的语言来进行交互。SQL是当今的标准的数据库语言,很多数据库都使用SQL作为交互语言:SQL Server、Oracle

数据定义语言(DDL):定义和管理数据对象,比如建立数据库、数据表

数据操作语言(DML):用于操作数据库对象中包含的数据。

数据库查询语言(DQL):用于查询数据库对象中包含的数据,能够对表进行一个查询。

数据控制语言(DCL):管理数据库的语言

8.连接数据库的步骤

1、连接MySQL服务器

2、选择数据库

3、对数据表进行增删改查。

4、关闭数据库

9.连接数据库

mysql

-u 用户名 root

-p 密码

-h 主机名

-P 端口号 3306

数据库语法的特点:

mysql>

1、每个SQL命令都要使用分号来完成。

2、->表示MySQL需要你继续输入命令。

3、如果说有一条比较长的命令我就可以拆分成多行来执行。

4、'>表示等待下一行,等待以单引号开始的字符串的结束

5、">表示等待下一行,等待以双引号开始的字符串的结束。

6、查询的命令不区分大小写,通常使用大写字母来写出SQL关键字和函数名,用小写字母写出数据库、数据表和数据列的名字

10.退出MySQL

quit

exit

\q

常见操作

\c 取消命令输入

\g 代替结束符;

\s 查看服务器端信息

\h 查看帮助

11.创建数据库

格式:

create database if not exists 数据库名 default charset utf8;

注意:

1、数据库是唯一的

2、if not exists先判断是否存在这个数据库,存在不创建,不存在就创建。

3、创建数据库,并设定编码集为utf8

12.显示当前数据库服务器下所有的数据库名

show databases;

use 数据库名   选择数据库

注意:

windows下面数据库名是不区分大小写的,在Linux下面严格区分。

13.删除数据库

drop database 数据库名

查看已经选择的数据库

select database();

查看当前的数据库的版本号

select version();

14.数据表的操作

show tables 查看数据库中的数据表。

创建数据表

格式:

create table 表名(列的一些信息);

例子:

create table t1(id int(12), name varchar(100));

create table `test t1`(id int(10), name varchar(50));

desc 表名 查看表的结构.

show create table 表名 查看建表的语句

\G 格式化输出(文本式,竖立显示)

drop table 数据表名

drop table [if exists] 数据表名 尝试性的删除表。

15.记录操作 增、删、改、查

(1)插入数据

格式:

insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);

insert into 表名(字段1,字段2,字段3) values(a值1,a值2,a值3);

(2)查询表数据

格式:

select * from 表名;

select 字段1,字段2,字段3 from 表名;

select * from 表名 where 字段=某个值;

(3)修改表数据

格式:

update 表名 set 字段=某个值 where 条件;

update 表名 set 字段1=值1,字段2=值2 where 条件;

update 表名 set 字段=字段+值 where 条件;

(4)删除数据

格式:

delete from 表名 where 字段=某个值;

delete from 表名; (慎重使用)

delete from 表名 where 字段 = 值;

清空表数据

truncate table 表名;

16.修改用户密码

在退出mysql服务的情况下 输入

1、mysqladmin -u 用户名 -p password 新密码

输入旧密码:

2、登录到mysql的时候使用set password for '用户名'@'登录主机'=password('新密码');

17.修改表的字段信息

修改表的字符集

alter table 表名 charset utf8

修改字段的类型

alter table 表名 modify 字段名 字段类型

修改字段的名字并同时修改字段类型

alter table 表名 change 旧字段名 新字段名 字段类型

修改字段的字符集

alter table 表名 modify 字段名 类型 charset utf8

添加新字段

alter table 表名 add 字段名 类型

删除字段

alter table 表名 drop 字段名

修改表名

alter table 旧表名 rename as 新表名

18.删除默认匿名的账户

为什么我直接输入mysql也能进入数据库中。是匿名用户,MySQL默认创建的。他有test和information_schema这两个库的权限。我们可以把他删掉

删除匿名用户:drop user ''@'localhost';

19.MySQL数据库的数据类型:

MySQL的数据类型分为四大类:数值类型、字串类型、日期类型、NULL。

1 数值类型:

*tinyint(1字节) 0~255 -128~127

smallint(2字节)

mediumint(3字节)

*int(4字节)

bigint(8字节)

*float(4字节)   float(6,2) float(m,d)

*double(8字节)   double (m,d)

decimal(自定义)字串形数值 decimal(m,d)

m精度   d标度

2 字串类型

普通字串

*char 定长字串   char(8)

*varchar 可变字串 varchar(8)

二进制类型

tinyblob

blob

mediumblob

longblob

文本类型

tinytext

*text     常用于

mediumtext

longtext

*enum枚举

set集合

3 时间和日期类型:

date 年月日

time 时分秒

datetime 年月日时分秒

timestamp 时间戳

year 年

4 NULL值

NULL意味着“没有值”或“未知值”

可以测试某个值是否为NULL

不能对NULL值进行算术计算

对NULL值进行算术运算,其结果还是NULL

0或NULL都意味着假,其余值都意味着真

MySQL的运算符:

算术运算符:+ - * / %

比较运算符:= > < >= <= <> !=

数据库特有的比较:in,not in, is null,is not null,like, between and

逻辑运算符:and or not

like: 支持特殊符号%和_ ; 其中 %表示任意数量的任意字符,_表示任意一位字符。

表的字段约束:

unsigned   无符号(正数)

zerofill   前导零填充

default默认值

not null   非空

auto_increment 自增 在产生一个唯一的标识或顺序值的时候,可以利用这个约束条件。这个约束条件只能用于整数类型,值一般从1开始。每行加1,插入一个null到一个auto_increment列时,MySQL将插入一个比出现过的最大值+1的值。一个表中只能有一个auto_increment列,并且必须定义为primary key或unique才能够使用

primary key 主键索引 (非null并不重复)

unique   唯一索引   (可以为null但不重复)

index   常规索引

19.建表语句格式:

create table 表名(

字段名 类型 [字段约束],

字段名 类型 [字段约束],

字段名 类型 [字段约束]

...

);

实例:

mysql> create table stu(

-> id int unsigned not null auto_increment primary key,

-> name varchar(8) not null unique,

-> age tinyint unsigned,

-> sex enum('m','w') not null default 'm',

-> classid char(6)

-> );

20.插入数据

1 插入指定字段

insert into t1(字段1,字段2,字段3...) values ('值1','值2','值3',....);

2 插入所有的字段

insert into t1 values ('值1','值2','值3',....);

3 插入多条数据

insert into t1(字段1,字段2,字段3...) values ('值1','值2'),('值1','值2')....;

4 插入结果

insert into t1(字段1,字段2,字段3...) select 字段1,字段2,字段3... from t1;

insert into t1() select * from t1;

5 插入单条数据

insert into t1 set 字段1=值1,字段2=值2....;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值