目录

精华总结

1. 数据库的操作

1.1 显示当前的数据库

1.2 创建数据库

2. 常用数据类型

2.1 数值类型

2.2 字符串类型

2.3 日期类型

3. 表的操作

3.1 查看表

3.2 查看表结构

3.3 创建表

3.4 删除表

4. 练习


精华总结

  • 操作数据库:

show databases ;        --显示

create database xxx ;        --创建

use xxx ;                --使用

drop database xxx ;        --删除

  • 常用数据类型:

INT:整型

DECIMAL(M, D):浮点数类型

VARCHAR(SIZE):字符串类型

TIMESTAMP:日期类型

  • 操作表:

show xxx ;        --查看

create table 表名 (

字段名1  类型1 ,

字段名2  类型2 ,

) ;        --创建

drop table 表名 ;        --删除

1. 数据库的操作

SQL不区分大小写

1.1 显示当前的数据库

show databases ;

1.2 创建数据库

create database 数据库名 ;

语法:(大写表示关键字,[]是可选项,CHARACTER SET: 指定数据库采用的字符集,COLLATE: 指定数据库字符集的校验(比较)规则 )

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...]

create_specification:

[DEFAULT] CHARACTER SET charset_name

[DEFAULT] COLLATE collation_name

1.3 使用数据库

use 数据库名 ;

1.4 删除数据库

删除操作非常危险,在实际工作中不应该使用drop命令来删除任何数据库!

drop database 数据库名 ;

DROP DATABASE [IF EXISTS] db_name;

2. 常用数据类型

  • 整数:int
  • 小数:double,decimal
  • 字符串:varchar
  • 时间:datetime

2.1 数值类型

分为整型和浮点型:

数据类型 大小 说明 对应java类型
BIT[(M)] M指定位数,默认为1 二进制数,M范围从1到64,存储数值范围从0到2^M-1 常用Boolean对应BIT,此时默认是1位,即只能存0和1
TINYINT 1字节 Byte
SMALLINT 2字节 Short
INT 4字节 Integer
BIGINT 8字节 Long
FLOAT(M, D) 4字节 单精度,M指定长度,D指定小数位数。会发生精度丢失 Float
DOUBLE(M, D) 8字节 Double
DECIMAL(M, D) M / D最大值+2 双精度,M指定长度,D表示小数点位数。精确数值 BigDecimal
NUMERIC(M, D) M / D最大值+2 和DECIMAL一样 BigDecimal

decimal类型:能够更精确的表示小数,但付出很多的时间和空间的代价。

扩展资料:

数值类型可以指定为无符号(unsigned),表示不取负数。

1字节(bytes)= 8bit。

对于整型类型的范围:

  1. 有符号范围:-2^(类型字节数*8-1)到2^(类型字节数*8-1)-1,如int是4字节,就是-2^31到2^31-1
  2. 无符号范围:0到2^(类型字节数*8)-1,如int就是2^32-1

尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。

2.2 字符串类型

数据类型 大小 说明 对应java类型
VARCHAR(SIZE) 0-65,535字节 可变长度字符串 String
TEXT 0-65,535字节 长文本数据 String
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 String
BLOB 0-65,535字节 二进制形式的长文本数据 byte[]

varchar是最常用的类型,(SIZE)表示这个字符串的最大长度,单位是字符。

2.3 日期类型

数据类型 大小 说明 对应java类型
DATETIME 8字节 范围从1000到9999年,不会进行时区的 检索及转换。 java.util.Date、 java.sql.Timestamp
TIMESTAMP 4字节 范围从1970到2038年,自动检索当前时 区并进行转换。 java.util.Date、 java.sql.Timestamp

3. 表的操作

需要操作数据库中的表时,需要先使用该数据库:

use db_test ;

3.1 查看表

show tables ;

3.2 查看表结构

查看这个表的列有哪些,以及类型。即:describe(描述)

desc 表名;

3.3 创建表

语法:

列名在前,类型在后

CREATE TABLE table_name (

field1 datatype,

field2 datatype,

field3 datatype

);

可以使用comment增加字段说明。示例:

create table stu_test(
    id int,
    name varchar(20) comment '姓名',
    password varchar(50) comment '密码',
    age int,
    sex varchar(1),
    birthday timestamp,
    amout decimal(13, 2),
    resume text
);

3.4 删除表

drop table 表名 ;

drop table if exists stu_test;

4. 练习

有一个商店的数据,记录客户及购物情况,有以下三个表组成:

  • 商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供应商provider)
  • 客户customer(客户号customer_id,姓名name,住址address,邮箱email,性别sex,身份证 card_id)
  • 购买purchase(购买订单号order_id,客户号customer_id,商品号goods_id,购买数量nums)

SQL:

--创建数据库
create database if not exists java101
default character set utf8;--选择数据库
use java101;--创建数据库表
--商品
create table if not exists goods(good_id int,goods_name varchar(32),unitprice int,category varchar(12),provider varchar(64)
);--客户
create table if not exists customer(customer_id int,name varchar(20),address varchar(50),email varchar(20),sex varchar(5),card_id varchar(20)
);--购买
create table if not exists purchase(order_id int,customer_id int,goods_id int,nums int
);

MySQL数据库基础语法总结相关推荐

  1. MySQL数据库基础(五)——SQL查询

    MySQL数据库基础(五)--SQL查询 一.单表查询 1.查询所有字段 在SELECT语句中使用星号""通配符查询所有字段 在SELECT语句中指定所有字段 select fro ...

  2. Linux Mysql 数据库基础

    目录 Linux Mysql 数据库基础 一.数据库 数据库简介 数据库的分类 数据库的发展史 数据库系统发展阶段 DBMS 数据库管理系统 数据库管理系统的优点 数据库管理系统的基本功能 数据库系统 ...

  3. MySQL数据库基础01 韩顺平 自学笔记

    MySQL数据库基础 数据库简单原理图 连接Mysql 启动和关闭mysql服务 连接Mysql指令 数据库三层结构 数据在数据库中的存储方式 SQL语句的分类 简单通过Java操作Mysql数据库 ...

  4. Mysql数据库基础知识(五)之:视图、变量、存储过程、函数、流程控制结构

    第一部分:Mysql数据库基础知识(一)之 基础查询----分组查询 第二部分:Mysql数据库基础知识(二)之 连接查询----子查询-----分页查询------union联合查询 第三部分:My ...

  5. 【笔记】——MySQL数据库——基础知识-——快速回顾——(加深印象篇)

    文章目录 前言 一.MySQL是什么? 二.数据库的常见概念 三.数据库存储数据的特点 四.SQL语言的分类 1.)DML 2.)DDL 3.)DCL 五.数据库的基本操作 5.1.)创建数据库 5. ...

  6. Mysql数据库基础第八章:窗口函数和公用表表达式(CTE)

    Mysql数据库基础系列 软件下载地址 提取码:7v7u 数据下载地址 提取码:e6p9 mysql数据库基础第一章:(一)数据库基本概念 mysql数据库基础第一章:(二)mysql环境搭建 mys ...

  7. 使用C语言访问MySQL数据库基础

    使用C语言访问MySQL数据库基础 一.MySQL管理 包含在MySQL发行版中的一些有用的工具程序使管理工作变得相当容易. 除mysqlshow命令以外,所有的MySQL命令都接受所示的3个标准参数 ...

  8. MySQL数据库基础02 韩顺平 自学笔记

    MySQL数据库基础02 sql表查询增强 分页查询 分组函数和分组子句 数据分组的总结 多表查询 问题的引出 多表查询的练习 自连接 子查询 子查询当作临时表使用 在多行子查询中使用all操作符 在 ...

  9. php大牛额城战笔记,PHP语言大牛开发笔记(8)——MySQL数据库基础回顾[2]

    本文主要向大家介绍了PHP语言大牛开发笔记(8)--MySQL数据库基础回顾[2],通过具体的实例向大家展示,希望对大家学习php语言有所帮助. 一.数据表 为了确保数据的完整性和一致性,在创建表时指 ...

最新文章

  1. Linux C编程--进程间通信(IPC)5--System V IPC 机制3--共享内存
  2. 你说我做丨为你定制「大局观版」职场设计课
  3. linux与windows双系统保持时间同步
  4. 安卓ListView行详细内容展示页编写和下拉刷新实现
  5. android ndk r10d.rar,[Android] 环境配置之Android Studio开发NDK
  6. 神仙工具!百度网盘资源一键转存阿里云盘,YYDS
  7. 【 java.sql.SQLException: Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_unico】
  8. svm预测股价 python_python 利用SVM预测股票涨跌
  9. JSON Viewer有个大bug导致不得不放弃掉
  10. ContestHunter #26 B 玩骰子
  11. 测试环境Hosts设置
  12. L3-013. 非常弹的球
  13. 智能车辆路径跟踪:carsim和simulink联合仿真,基于车速的变权重多点预瞄驾驶员模型个例
  14. Sizzle选择器揭秘--Sizzle选择器
  15. 刘振飞:做云计算比保障双十一要难得多
  16. 一个700万人口的国家系统遭黑客入侵,超500万人身份信息泄露...
  17. HTML6(无序列表,有序列表和自定义列表)
  18. cloc工具 linux,Linux下源代码行数统计工具(sloccount, cloc等)
  19. 电子元器件 热阻的理解
  20. 3.15求解“鸡兔同笼问题”:鸡和兔在一个笼子里,共有腿100条,头40个,问鸡兔各有几只?

热门文章

  1. 肖特基(Schottky)二极管与普通二极管的区别
  2. ٩( ‘ω‘ )و 【超详细!!!C语言scanf问题】scanf吃掉回车或空格问题
  3. DrawCall是什么?
  4. VEGAS Pro 16——视频编辑的新时代
  5. Datawhale task4打卡——二手车价格预测
  6. 做技术的,不要搞封建迷信活动
  7. MATLAB对图像做矩阵的减法、点乘运算和高斯变换的结果对比
  8. 3D机器视觉厂商的场景争夺战役
  9. 【Adobe】解决 Indesign 因 plugplugowl.dll 出现闪退问题
  10. 新中国70年:银行业的五个发展阶段