IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL之数据库和表的创建与管理 -> 正文阅读

[大数据]MySQL之数据库和表的创建与管理

创建数据库:

create database 数据库名;
# 例:创建一个名为Bookstore数据库
create database Bookstore;

?例:创建一个名为Bookstore的数据库,采用字符集gb2312和校对规则gb2312_chinese_ci

create database Bookstore
default character set gb2312
collate gb2312_chinese_ci;

?MySQL按以下规则选择数据库字符集和数据库的校对规则:

1、如果指定了 CHARACTER SET X和COLLATE Y,那么采用字符集X和校对规则Y。

2、如果指定了 CHARACTER SET X而没有指定COLLATE Y,那么采用CHARACTER SET X和CHARACTER SET X的默认校对规则。

3、如果没有指定,那么采用服务器字符集和服务器校对规则。

?打开数据库:

USE 数据库名;

?修改数据库:

例:修改数据库Pet的默认字符集为latinl,校对规则为lantinl_swedish_ci

alter database Pet
default character set lantinl
default collate latinl_swedish_ci;

删除数据库:

drop database 数据库名;

?显示数据库:

show databases;

?创建表:
例:设已经创建了数据库表Bookstore,在该数据库中创建图书目录表Book

PRIMARY KEY表示将“学号”字段定义为主键。engine=InnoDB表示采用的存储引擎是InnoDB,InnoDB是MySQL在Windows平台默认的存储引擎,因此engine=InnoDB可以省略

use Bookstore;
create table book(图书编号 char(20) not null PRIMARY KEY,
图书类别 varchar(20) not null 
书名 varchar(40) not null,
作者 char(10) not null)engine=InnoDB;

?修改表:

例:在表d1中增加新的一列a

ALTER TABLE d1 ADD COLUMN a TINYINT NULL;

例:把一个INTEGER列的名称从a变更到b

ALTER TABLE d1 CHANGE a b INTEGER;

例:把一个列的数据类型改为bigint

ALTER TABLE d1 MODIFY b bigint NOT NULL;

注意:若表中该列所存数据的数据类型与将要修改的列的数据类型冲突,则发生错误。例如,原来char类型的列要修改成Int类型,而原来列值中有字符型数据a,则无法修改。

例:修改表名。将表a改名为b

ALTER TABLE a RENAME TO b;

假设已经在数据库Bookstore中创建了表book,表中存在“书名”列。在表book中增加“浏览次数”列并将表中的“书名”删除

ALTER TABLE除了用于更改原有表的结构外,也可以用于修改表名。

USE Bookstore;
ALTER TABLE book
ADD 浏览次数 tinyint NULL,
DROP COLUMN 书名;

?假设数据库Bookstore中已经存在tablel表,将tablel表重命名为student

修改表名除了ALTER TABLE命令外,还可以用RENAME TABLE语句来更改表。

USE Bookstore;
ALTER TABLE tablel
RENAME TO student;

RENAME TABLE语句可以同时更改多个表的名字?

假设数据库Bookstore中已经存在table2表和table3表,将table2表重命名为orders,table3表重命名为orderlist。

USE Bookstore;
RENAME TABLE table2 TO orders,table3 TO orderlist;

?复制表:

假设数据库Bookstore中有一个表Book,创建于Book表结构相同的名为book_copy1的拷贝

CREATE TABLE book_copy1 LIKE Book;

?若在复制结构的同时还要复制其数据,需要使用AS关键字,使用SELECT语句对需要复制的数据进行选择。

CREATE TABLE book_copy2
AS
(SELECT * FROM Book);

?删除表:

例:删除表test

DROP TABLE IF EXISTS test;

显示数据表文件:

SHOW TABLES;

例:显示Bookstore数据库建立的数据表文件

USE Bookstore;
SHOW TABLES;

显示数据表结构:

例:查看Book表的列的信息

DESCRIBE Book;

查看Book表图书编号列的信息

DESC Book 图书编号;

?字符串类型:char和varchar

????????char和varchar类似,但他们保存和检索的方式不同,其最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

????????char和varchar类型声明的长度表示用户要保存的最大字符数。

????????char列的长度固定为创建表时声明的长度。长度可以为0~255的任何值。当保存char值时,在他们的右边填充空格以达到指定的长度。当检索到char值时,尾部的空格被删除掉。

????????varchar列中的值为可变长字符串。长度可以指定为0~65535之间的值。varchar的最大有效长度由最大行大小和使用的字符集确定。整体最大长度是65532字节。同char对比,varchar值保存时只保存需要的字符数,另加一个字节来记录长度。若列声明的长度超过255,则使用两个字节。varchar值保存时不进行填充。当值保存和检索时尾部的空格仍保留,符合标准SQL。

????????若分配给char或varchar列的值超过列的最大长度,则对值进行裁剪以使其适合。若被裁剪的字符不是空格,则会产生一条警告。

?blob和text类型

? ? ? ? blob列被视为二进制字符串(字节字符串)。blob列没有字符集,其排序和比较基于列值字节的数值。这种类型数据用于存储声音、视频、图像等数据。例如,图书数据处理中的图书封面、会员照片可以设定为blob类型。

? ? ? ? text列被视为非二进制字符串(字符字符串)。text列有一个字符集,并且根据字符集的校对规则对值进行排序和比较。在实际应用中如个人履历、奖惩情况、职业说明、内容简介等信息可设定为text的数据类型。例如,图书数据处理中的内容简介可以设定为text类型。

? ? ? ? 在text或blob列的存储或检索过程中不存在大小写转换。blob和text列不能有默认值。

? ? ? ? blob或text对象的最大值由其类型确定,但在客户端和服务器之间实际可以传递的最大值由可用内存数量和通信缓存区大小确定。用户可以通过更改max_allowed_packet变量的值更改消息缓存区的大小,但必须同时修改服务器和客户端程序。

?日期和时间类型

1、date类型,表示日期,输入数据的格式是:yyyy-mm-dd。支持的范围是1000-01-01到9999-12-31。

2、time类型,表示时间,输入数据的格式是:hh:mm:ss。time值的范围可以从-838:59:59到838:59:59。小时部分的数据如此大的原因是time类型不仅可以用于表示一天的时间(必须小于24小时),还可能为某个事件过去的时间或两个事件之间的时间间隔(可以大于24小时,甚至可以为负)。

3、datetime类型,表示日期时间,格式是:yyyy-mm-dd hh:mm:ss。支持的范围为1000-01-01 00:00:00到9999-12-31 23:59:59。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-20 18:56:33  更:2022-07-20 18:57:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 0:57:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码