MySQL 常用数据类型

本文介绍了MySQL的常用数据类型,包括整数、浮点、字符串、日期时间等,并详细讲解了创建数据库和数据表的过程。此外,还讨论了不同存储引擎的特点,如InnoDB、MyISAM和MEMORY。
摘要由CSDN通过智能技术生成

连接服务器

CMD里面的命令:mysql -uroot -p

若显示Can’t connect to MySQL sever on ‘localhost’,那么右键计算机-管理-服务-重新启动MySQL即可

MySQL语句规范
SQL必须用分隔符结尾
数据名称和表名称最好都小写

将分隔符由;改为了//,程序见到//才会停止

mysql -uroot -p delimiter=//

开启输出日志

\T D:\MySQL\output_diary\mysql1.txt
\t ##表示停止写日志

数据库操作

创建数据库

CREATE DATABASE [IF NOT EXISTS] maizi1;

[ ]表示可选,就是可敲可不敲

创建不同于默认的编码方式的数据库

SHOW CREATE DATABASE maizi1 DEFAULT CHARACTER SET = 'gck'

修改已有数据库的编码方式

ALTER DATABASE maizi3 DEFAULT CHARACTER SET utf8

常用命令

查看上一步产生的警告

SHOW WARNINGS;

查看已有的数据库

 SHOW DATABASES;

查看已有数据库的定义

SHOW CREATE DATABASE maizi1;

打开数据库

USE db_name

查看当前打开数据库的名称

SELECT DATABASE();

删除指定数据库

DROP DATABASE maizi4

数据表的相关操作

数据表是数据库最重要的组成部分之一,是其他对象的基础,数据表是存储数据的数据结构,数据表是包含了行和列构成的二维网络。
数据表至少有一列,可以没有行或者多行,数据表名称要求唯一,而且不要包含特殊字符。

创建数据表

MySQL 中的数据类型

整数类型
TINYINT
有符号:±27-1,无符号:(0,28-1)
SMALLINT:跟上面一样,不过指数部分分别为215,216
MEDIUMINT:223,224
INT:231,232
BIGINT:265,264
BOOL,BOOLEN:TINYINT(1),0为TRUE,其他为FALSE

不用死记硬背,可以通过help \h ? 来查看数据类型的范围

浮点类型
FLOAT[(M,D)]:M代表数字总位数,D代表小数后面的位数。

字符串类型

  1. CHAR(M):定长字符串,M个字节
  2. VARCHAR(M):变长字符串,L+1字节,L<=M
  3. TINYTEXT
  4. TEXT
  5. MEDIUMTEXT
  6. LONGTEXT
  7. ENUM(‘value1’,‘value2’,…):当值可以列举的时候,从列举之中选择一个
  8. SET(‘value1’,‘value2’),可以选择多个值

日期时间类型

  1. TIME
  2. DATE
  3. DATETIME
  4. TIMESTAMP
  5. TEAR

MQL存储引擎

什么是存储引擎?
用户可以根据不同的存储方式,来选择存储引擎。
如何查看MySQL数据引擎

  1. 查看MySQL支持的存储引擎
SHOW ENGINES\G;

\G:表示分行显示

  1. 查看显示支持的存储引擎信息
SHOW VARIABLES LIKE 'have%';
  1. MySQL常用的存储引擎及特点
    1. InnoDB存储引擎:读取效率低,占用数据大
    2. MyISAM存储引擎:占用磁盘空间小,但是不支持事务
    3. MEMORY存储引擎:速度快,提高表的处理,但是数据存储在内存中,用了必须删掉。安全性不高,适合一次性。

同一个数据库可以使用多个数据引擎,根据不同的表进行选择。

建立TABLE的步骤

  1. 建立TABLE第一步:找到表头的数据类型,比如:
    编号:MEDIUMINT 无符号
    姓名:VARCHAR(20)
    性别:ENUM(‘男’,‘女’,‘保密’)
    电话:字符串|整数 无负数
    地址:变长字符串(200)
    邮箱:变长字符串(50)
    薪水:浮点数FLOAT(8,2)
    是否结婚:布尔类型 TINYINT(1)
  2. 创建数据表
    添加注释:# 或者 –
# 注释内容
-- 注释内容
-- 创建maizi数据库
CREATE DATABASE IF NOT EXISTS `maizi` DEFAULT CHARACTER SET 'UTF8';

USE `maizi`;

-- 创建学员表(user)
-- 编号 id
-- 用户名 username
-- 年龄 age
-- 性别 sex
-- 邮箱 email
-- 地址 addr
-- 生日 birth
-- 薪水 salary
-- 电话 tel
-- 是否结婚 married
-- 注意:当需要输入中文的时候,需要临时转换客户端的编码方式
-- SET NAMES GBK;
-- 字段注释 通过COMMENT 注释内容 给字段添加注释
CREATE TABLE IF NOT EXISTS `user`(
id SMALLINT,
username VARCHAR(20),
age TINYINT,
sex ENUM('男','女','保密'),
email VARCHAR(50),
addr VARCHAR(200),
birth YEAR,
salary FLOAT(8,2),
tel INT,
married TINYINT(1) COMMENT '0代表未结婚,非0代表已婚'
)ENGINE=INNODB CHARSET=UTF8;

  1. 查看指定表的表结构
DESC tbl_name
DESCRIBE tbl_name
SHOW COLUMNS FROM tbl_name
  1. 向表中插入记录
INSERT tbl_name VALUE|VALUES(值,...);
  1. -查询表中所有记录
SELECT * FROM tbl_name;
SELECT * FROM test1;

测试整型

  1. 添加无符号的数据类型

CREATE TABLE test2(
num1 TINYINT UNSIGNED,
num2 TINYINT 
);

INSERT test2 VALUES(0,-12);
  1. 零填充
CREATE TABLE test3(
num1 TINYINT ZEROFILL,
num2 SMALLINT ZEROFILL,
num3 MEDIUMINT ZEROFILL,
num4 INT ZEROFILL
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值