数据存储
集合
数组
容器----->使用完毕就不存在了集合对象/数组—被回收!
IO流
字节流/字符流 将数据存储到配置文件/xxx.txt文件中 ,效率低(耗时)
在计算机上–按照数据库软件
关系型数据库
SQLServer,Oracle,db2,Mysql(开源,小型化)
非关型数据库
典型代表:mangodb/redis(key-value形式)---(缓存一些数据)
验证是否安装完毕(登录成功,说明mysql的环境变量也配置了)
C:\Users>mysql -uroot -p
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.5.40 MySQL Community Server (GPL)
Copyright © 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
DDL语句:数据库的定义:对数据库以及表的操作
四个:mysql默认带的四个库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema | 相关配置信息库
| mysql | 存储相关表:user 用户表(管理员)
| performance_schema | mysql性能相关的
| test | 测试的库
+--------------------+
4 rows in set (0.00 sec)
– 创建数据库
create database 数据库名;
mysql> create database mydb_01;
Query OK, 1 row affected (0.01 sec)
– 方式2: create database if not exists 数据库名; 如果不存在这个库,创建一个新的
mysql> create database if not exists my_db02;
Query OK, 1 row affected (0.02 sec)
– 查看数据库的信息 (数据库名,以及数据库的默认的编码格式)
mysql> show create database mydb_01;
+----------+------------------------------------------------------------------+
| Database | Create Database |
+----------+------------------------------------------------------------------+
| mydb_01 | CREATE DATABASE `mydb_01` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+------------------------------------------------------------------+
1 row in set (0.01 sec)
– 修改数据库的这个编码格式gbk
alter databse 数据库名 DEFAULT(省略不写) CHARACTER set gbk ;
mysql> alter database mydb_01 default character set gbk;
Query OK, 1 row affected (0.01 sec)
mysql> show create database mydb_01;
+----------+-----------------------------------------------------------------+
| Database | Create Database |
+----------+-----------------------------------------------------------------+
| mydb_01 | CREATE DATABASE `mydb_01` /*!40100 DEFAULT CHARACTER SET gbk */ |
+----------+-----------------------------------------------------------------+
1 row in set (0.00 sec)
– 删除数据库
drop database 数据库名;
mysql> drop database my_db02;
Query OK, 0 rows affected (0.02 sec)
– 方式2
drop database if exists 数据库名; 如果存在,删除该库
mysql> drop database if exists mydb_02;
Query OK, 0 rows affected (0.00 sec)
– 修改库的字符集:创建数据库的时候直接修改了库的字符集
create database if not exists 数据库名 default(不写) character set 字符集 ;
mysql> create database if not exists mydb_04 default character set gbk ;
Query OK, 1 row affected (0.01 sec)
DDL语句操作表
创建表
create table 表名(
字段名称1 字段类型1,
字段名称2 字段类型2,
字段名称3 字段类型3,
…
字段名称n 字段端类型n
);
常见字段类型:
varchar(m):m多少个字符-------------mysql字符串类型
int: 默认int(11):11位(记录实际字符) int(num):参数指定长度 mysql:整数类型
int(4) 1 ------>0001
double(5,2) mysql的小数类型 :表示小数5位,小数点后保留2位
时间:
date mysql的日期时间(仅仅是日期,不包含具体时间): 年月日 2020/11/5
datetime mysql的日期时间:是日期+具体时间 2020/11/5 时分秒…
timestamp(时间戳) 具体哪个时间操作的表 2020//11/15 16:16这个时间修改了表的字段
在创建表之前,先使用这个库
use 数据库名
mysql> use mydb_01;
Database changed
查询该库中的表
mysql> show tables;
Empty set (0.00 sec)
在mydb_01创建一个学生表
学生表 数据类型
姓名 varchar(3)
年龄 int
性别 varchar(2)
分数 double
出生日期 date
mysql> create table student(
-> name varchar(3),
-> age int,
-> gender varchar(2),
-> socre double(3,1),
-> birthday date
-> );
Query OK, 0 rows affected (0.03 sec)
mysql> show tables;
+-------------------+
| Tables_in_mydb_04 |
+-------------------+
| student |
+-------------------+
1 row in set (0.00 sec)
— 查询表的结构
desc 表名;
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| name | varchar(3) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| gender | varchar(2) | YES | | NULL | |
| socre | double(3,1) | YES | | NULL | |
| birthday | date | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
– 修改表
– 给表中新增一列 (加入一个新的字段)
mysql> alter table student add address varchar(10);
Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| name | varchar(3) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| gender | varchar(2) | YES | | NULL | |
| socre | double(3,1) | YES | | NULL | |
| birthday | date | YES | | NULL | |
| address | varchar(10) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
6 rows in set (0.04 sec)
– 修改表的数据类型
mysql> alter table student modify gender varchar(3);
Query OK, 0 rows affected (0.04 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc student;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| name | varchar(3) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| gender | varchar(3) | YES | | NULL | |
| socre | double(3,1) | YES | | NULL | |
|