惊了!!! 小白零基础学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
年月日 时分秒 年月日
---------------------
惊了!!! 小白零基础学java (月薪过万是你的梦想嘛) 手把手教学 就怕你不动手【二十五】第二章【初识MySQL】的更多相关文章
- 零基础学Java,PayPal技术专家手把手带你入门
在最权威的 TIOBE 编程语言排名榜单上,Java 常年稳居第一,可以说是世界上应用最为广泛的一门语言. 同时,在微服务.云计算.大数据.Android App 开发等领域,Java 也是当之无愧的 ...
- 零基础学Java第四节(字符串相关类)
本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...
- 零基础学Java第三节(基本输入输出)
本篇文章是<零基础学Java>专栏的第三篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] Java程序的命令行参数 我们可以 ...
- 零基础学Java第二节(运算符、输入、选择流程控制)
本篇文章是<零基础学Java>专栏的第二篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 第一章 运算符 1.1 算术运算符的概述和用法 运算符 对常量和变 ...
- 零基础学Java第一节(语法格式、数据类型)
本篇文章是<零基础学Java>专栏的第一篇文章,从本篇文章开始,将会连更本专栏,带领大家将Java基础知识彻底学懂,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! ...
- 零基础学Java第五节(面向对象一)
本篇文章是<零基础学Java>专栏的第五篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] 类与对象 在哲学体系中,可以分为主 ...
- 零基础学Java第六节(面向对象二)
本篇文章是<零基础学Java>专栏的第六篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] 继承 创建一个Person类 我们 ...
- 零基础学Java(1)初识Java程序
前言 就国内来说,Java毫无疑问是后端语言中的No.1没有之一,所以今天我们也来0基础学习Java!!! Java的好处(针对测试工程师) 面试加分->涨薪 大多数公司服务端用的都是Java, ...
- [零基础学JAVA]Java SE面向对象部分.面向对象基础(02)
String类 JAVA:public class StringTest{ public static void main(String args[]){ //尽量避免使用new,这样会产生内存垃圾 ...
随机推荐
- Solidworks如何另存为和打开OBJ文件
1 点击工具-插件,勾选ScanTo3D(最好后面的启动也勾选上,否则下次启动将不会默认自动启动这个插件,还需要再做一次才能打开或者另存为OBJ) 2 注意打开零件图的方式,你不能直接打开Soli ...
- LeetCode 771. Jewels and Stones (宝石与石头)
题目标签:Hash Table 这一题很简单,题目给了两个string:J 和 S. 只要把J 里面的 char 放入HashSet,再遍历S找出有多少个石头是宝石. Java Solution: R ...
- MySQL 登录问题
1.问题一:使用update mysql.user set password='root'改动密码后,不能登录 解决:操作过程例如以下. (1)关闭mysql(杀掉mysqld进程),然后使用命令: ...
- FourCC
https://en.wikipedia.org/wiki/FourCC A FourCC (literally, four-character code) is a sequence of four ...
- PCB genesis连孔加除毛刺孔(槽孔与槽孔)实现方法(三)
一.为什么 连孔加除毛刺孔 原因是 PCB板材中含有玻璃纤维, 毛刺产生位置在于2个孔相交位置,由于此处钻刀受力不均导致纤维切削不断形成毛刺 ,为了解决这个问题:在钻完2个连孔后,在相交处再钻一个孔, ...
- Ballot evaluation
http://acm.hdu.edu.cn/showproblem.php?pid=2986 题意很简单,主要是要处理精度,最手残的是把单词拼写错了... #include <stdio.h&g ...
- null, undefined,"",0,false是什么关系?
null本质上和0,"",false是一类东西,它们都表示一种数据类型的非值.正如0表示数字类型的非值,""表示字符类型的非值一样,null表示完全空的对象,即 ...
- Codeforces 803G Periodic RMQ Problem ST表+动态开节点线段树
思路: (我也不知道这是不是正解) ST表预处理出来原数列的两点之间的min 再搞一个动态开节点线段树 节点记录ans 和标记 lazy=-1 当前节点的ans可用 lazy=0 没被覆盖过 els ...
- ansible基础知识
安装ansible epel源 第一步: 下载epel源 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel- ...
- Squirrel的安装(windows上Phoneix可视化工具)
一.下载安装 下载地址:http://www.squirrelsql.org/下载所需版本 或者 从网址http://www.squirrelsql.org/下载相应版本的squirrel ...