MySQL 数据库基础

    数据库的存在是为了保存数据的。和数据库相比,文件有几个缺点:安全问题、不利于数据查询和管理、不利于存储海量数据等。数据库更能有效管理数据。

    数据库大致分为关系型数据库和非关系型数据库。关系型数据库,是使用“数据表”的格式来组织数据的,可以类比于excel表格。mysql就是这样的数据库。

    mysql是一个“客户端-服务器”结构的程序。客户端就是主动的一方,给服务器发送的数据称为“请求”,而服务器是被动的一方,收到客户端数据后,返回的数据称为“响应”。

下面我们来使用mysql5版本来说明。

数据库操作

    数据库指令可以大写也可以小写。每一条语句结束后都要带上英文的分号,否则,MySQL认为该语句还没有结束。

显示当前数据库

show databases; //注意database是复数形式

创建数据库 

create database [if not exists] 数据库名 [default 可选项];

//如果不存在这个数据库的话就创建数据库,这里是单数

    这些可选项有:CHARACTER SET 字符集名 来设置数据库采用的字符集,COLLATE 校验规则 来指定字符集校验规则。

    设置字符集为utf-8。mysql默认字符集为拉丁文,对于汉字,它会出现乱码。设置了字符集为utf-8就可以避免乱码的出现。但是这种方法只是暂时的,需要的可以自行查找如何更改mysql的字符集。现在我们查看java这个数据库是不是存在。下面的java_104和test是本人已经创建了的数据库。要注意的是information_schema、mysql、perfromance_schema这三个数据库是mysql默认的数据库。

    当前创建的是数据库。而在数据库里面,有很多的“数据表”。这里的数据库,就是一个“数据集合”。每一个表里面有很多的行,每一行称为“一条记录”,每一行也有很多的列,每一个列也称为一个“字段”。

数据表类似于excel,每一列确定了数据类型,就不能使用别的数据类型

使用数据库

use 数据库名;

要使用哪一个数据库,需要先选中数据库,才能在数据库中进行操作。

删除数据库

drop database [if exists] 数据库名;

    要注意的是,删库操作是非常危险的。要小心操作。默认的数据库information_schema、mysql、perfromance_schema千万不要删除,否则mysql会出问题。

常用数据类型

    mysql是一门比较古老的语言,在java统一数据类型名称之前,数据类型起名是各有各的起法。所以你看到的mysql数据类型和其他的语言不太一样。

整型和浮点型
字符串型
时间类型

    常用的数据类型有:int、bigint、double、decimal、varchar和datatime。有的同学可能不知道datatime的格式。它的格式是这样的:“年-月-日 时:分:秒”。不是每一个都是必须要写的。

数据表操作

在操作数据库中的表的时候,先 use 数据库名 使用数据库。

创建表

create table 表名 (
    字段名 数据类型 comment '说明',//使用comment的时候,在‘说明’加,
    字段名 数据类型,//不使用comment的时候,直接加,
    ...);

    在一个数据库中,表名是不能重复的,而且,如果表名和sql语句中的关键字重名了,就需要加反引号,需要在英文状态下输入。位置在键盘tab上方,数字1的左边。

创建班级数据表。

查看数据库中的表

想知道数据库中有哪些表,使用该语句。

show tables;

查看表的结构

创建之后,想知道创建的表是什么结构,使用该语句。

desc 表名;

    field表示字段名字;type表示字段类型;null表示是否允许为空;key表示索引类型;default表示默认值;extra表示是否有扩充。除了field和type,其他的需要后序的知识。

    type中int后面有(11)是自动加的,表示打印的时候,显示数据的最大宽度是11位数字,只影响在客户端中的显示,不影响数据的存储和计算。如果是varchar(20),这里的(20)是手动加的,表示存储的时候,最多存储20个字符,具体的情况需要具体的分析该给varchar多少字符。

删除表

-- 删除 表
drop table 表名;
-- 如果存在 表,则删除 表
drop table if exists 表名;

删除表也是一个很危险的操作,需要小心操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值