惊了!!! 小白零基础学java (月薪过万是你的梦想嘛) 手把手教学 就怕你不动手【二十五】第二章【初识MySQL】

初识MySQL
1. 了解主流的数据库和数据库分类
1.1 数据库概念
数据库:按照数据结构来组织、存储和管理数据的一种建立在计算机存储设备上的仓库。

数据库的优势:

1. 可以持久化存储大量的数据、方便我们进行检索
2. 可以保证数据的安全和数据的一致性(事务...)
3. 可以很轻松的通过数据库来提取出新的有效信息(计算平均分、统计人数)
1
2
3
1.2 数据库的分类
RDB(Relational DataBase)关系型数据库

? 例如:在关系型数据库中 有一张存储了学生数据的表格 还有一张存储了学生年级的表格

学生姓名 性别 年级

** 男 1

** 男 2

年级编号 年级名称 年级…

1 大学一年级

2 大学二年级

性能方面 关系型数据库受限于技术实现,所以有瓶颈。

但是它在安全方面比较可靠。(事务支持好)

NoSQL(Not only SQL)不仅仅是SQL 非关系型数据库

? 文档型数据库

? 键值对数据库 key value

? 姓名 **

? 图形数据库

它这种概念正式兴起于web2.0时代 2006-2009… 它的性能非常优异 。

但是它的安全方面要比较差。(事务支持不太好)

RDB(主) + NoSQL(副)

1.3 主流数据库
RDB:

? MySQL Oracle SQLServer PostgreSQL MariaDB SQLlite…

NoSQL:

? Redis Memcached MongoDB HBase Solr ElasticSearch…

2. 了解MySQL并学会安装MySQL

3. 学会使用MySQL的图形界面管理工具
4. 了解常用的数据库命令
4.1 数据库服务器的组成
? 数据库是基本单位

? 数据表是数据库的基本单位

例如:我们需要开发一个小说阅读器,它需要存储小说、分类、用户…信息。

创建一个小说阅读器的数据库:sun_reader_db

在sun_reader_db中创建小说表、分类表、用户表(二维表)

4.2 SQL介绍
**SQL:(**Structured Query Language)结构化查询语言 它也是一种规范、标准。

我们的关系型数据库都是采用SQL来进行操作的,不同的数据库对SQL进行了一些改造,但是类似。CRUD

DDL:数据定义语言 创建Create 删除Drop 修改Alter table…

DML:数据操作语言 CUD 增Insert 删Delete 改Update

DQL:数据查询语言 Select 查询

DCL:数据控制语言 Grant 、Roll back 、 commit…

4.3 数据库相关操作命令
-- 创建数据库命令
create database 数据库名;
-- 删除数据库命令
drop database 数据库名;
-- 查看数据库
show databases;
-- 切换数据库 如果需要在此数据库中进行操作 必须要先切换此数据库
use 数据库名;
1
2
3
4
5
6
7
8
5. 熟悉数据表操作的语句/命令
5.1 创建数据库表
create table 表名(
列名1 数据类型(数据长度) 列约束/属性,
列名2 数据类型 列约束....
);
1
2
3
4
-- 创建用户信息表 有些时候在MySQL中 如果有敏感字/关键字 可以添加反引号`来解决。注意不是单引号‘
create table `user`(
id int,
username varchar(25)
);
1
2
3
4
5
5.2 查看数据库中的数据表
-- 查看数据库的所有表
show tables;
-- 查看表定义/结构
desc/describe 表名;
1
2
3
4
5.3 删除数据库
-- 删除数据库表
drop table 表名;
1
2
6. 熟悉常见的数据列属性和类型
6.1 列属性
not null 不允许字段为空
unique 字段必须唯一
unsigned 无符号 无负号 不能与unique关键字同时存在
zerofill 以0补全某个字段类型的剩余长度 不能与unsigned同时使用
default 默认值
comment 注释
primary key 主键:用来唯一标识一条数据的列就是主键 它的默认效果为 非空not null且唯一unique 它还能提升查询速度
auto_increment 自动增长 用于主键列的值自增
1
2
3
4
5
6
7
8
6.2 列类型
数值:可写可不写
tinyint(短整型) [int](整数型) bigint(长整型)
[double](双精度浮点数)
字符串:字符串必须写长度
[varchar] 可变字符串 最大长度255 char不可变字符串
假设设置了varchar长度为10 char长度也为10 当真实存了1个字符 varchar占用1个 char占用10个(效率高)
text 长文本
日期类型:日期类型不能写长度
[datetime] timestamp
年月日 时分秒 年月日
---------------------

原文地址:https://www.cnblogs.com/ly570/p/11072477.html

时间: 2024-10-09 20:33:07

惊了!!! 小白零基础学java (月薪过万是你的梦想嘛) 手把手教学 就怕你不动手【二十五】第二章【初识MySQL】的相关文章

www808888webcom零基础学Java怎么开始?199O883661学习哪些内容?

零基础学Java怎么开始?Java要学习哪些内容?攻城狮之友 2018-11-12 17:13:34Java 语言是一门随时代迅速发展的计算机语言程序,其深刻展示了程序编写的精髓,加上其简明严谨的结构及简洁的语法编写为其将来的发展及维护提供了保护.那么零基础学Java怎么开始?Java要学习哪些内容呢? 头一阶段的Java基础 JavaEE的学习内容从计算机基本概念,DOS命令开始,入门编程语言扫盲,什么是程序,如何配置Java开发环境,Java编程的过程是怎样的,Java有什么物特点,程序是如

【软帝学院】零基础学Java,必须搞懂的10个问题!

零基础学Java,必须搞懂的10个问题! Java是当前互联网行业内的热门语言,不仅可以应用于Android和网站开发而且也广泛应用于金融服务.高频金融空间等领域.也正是因为高居不下的热度,越来越多的人选择学习Java语言.那么零基础学习Java都需要搞懂那些问题呢? 1.Java语言的特点,Java与c++的区别 Java语言具有简单易学.安全性.可靠性.支持多线编程.编译和解释共存.与平台无关性等特点.Java与c++都是面向对象的语言.两者的区别是,C++的类支持多重继承,而Java的类是

零基础学Java,必须搞懂的10个问题!

零基础学Java,必须搞懂的10个问题!Java是当前互联网行业内的热门语言,不仅可以应用于Android和网站开发而且也广泛应用于金融服务.高频金融空间等领域.也正是因为高居不下的热度,越来越多的人选择学习Java语言.那么零基础学习Java都需要搞懂那些问题呢?1.Java语言的特点,Java与c++的区别Java语言具有简单易学.安全性.可靠性.支持多线编程.编译和解释共存.与平台无关性等特点.Java与c++都是面向对象的语言.两者的区别是,C++的类支持多重继承,而Java的类是单继承

零基础学Java应知道的学习步骤规划与市场行情「附源码和视频」

无论是在校的学生也好,还是转行的也好,如今学JAVA开发的人越来越多,造成了如今新手越来越多,有人就说JAVA饱和了,JAVA才刚开始以一种好的势头发展就饱和了.我也是无语,一般说饱和的人,基本是学的不咋地,找不到工作的,怨天尤人说饱和了,类似于吃不到葡萄说葡萄酸. 纵观中国目前整体行业来说,互联网IT行业 成为了拔尖的行业,机械行业有点夕阳西下的意思,电子行业被国企所垄断,没有关系很难混起来.如果说没有背景,单凭自己能力的话,在如今这个需要钱的社会,IT互联网程序开发成了靠自己能力可以多挣一点

零基础学Java——小白的Java之路(2)

Java标识符 标识符用来表示变量.方法或类等的名字. 定义的规则如下: 只能包含字母.数字.下划线和美元符号$. 不能以数字开头 严格区分大小写,如 a 和 A 是不同的标识符 没有长度限制 注意:标识符的命名应该有自明性(见名知意),看到名字就可以知道这个标识符表示的内容. 下面是一些合法的标识符(名称): myName,My_name,Points,$points,_sys_ta,OK,_23b,_3_ 以下是一些非法的标识符: 2thupk,high-dig,Not/ok,#name 使

中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零

期末考试的编程题 返回 这是期末考试的编程题,在60分钟内,你可以多次提交,直到正确为止. 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 二进制的前导的零(10分) 题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第一个1之前,有27

二进制的前导的零——mooc《零基础学Java语言》-(浙大翁凯)期末编程题

题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第一个1之前,有27个0.我们把这些0称作前导的零. 现在,你的任务是写一个程序,输入一个整数,输出在32位二进制表达下它前导的零的个数. 输入格式: 一个整数,在32位的整数可以表达的范围内. 输出格式: 一个整数,表达输入被表达为一个32位的二进制数时,在第一个1之前的0的数量. 输入样例: 25

中国MOOC_零基础学Java语言_第7周 函数_1分解质因数

第7周编程题 查看帮助 返回 第7周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩. 1 分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. 现在,你的程序要读入一个[2,10000

零基础学JAVA语言第五周数组--求平均数例题

package shuzu; import java.util.Scanner; public class Shuzu_pjs { public static void main(String[] args) { // 用户输入一系列数字,然后求出这些数字的平均数,并输出输入数字中大于平均数的数 Scanner in = new Scanner(System.in); System.out.println("你打算输入多少个数值?请输入:"); // 计算平均数,需要有:1.记录输入的