数据库是专门存储数据对象的容器,这里的数据对象包括表、视图、触发器、存储过程等,其中表是最基本的数据对象。

创建数据库

在 MySQL 数据库中存储数据对象之前,先要创建好数据库。

语法:

create database [if not exists]

[[default] character set ] [[default] collate ];:数据库名称不可与SQL关键字相同,同一个数据库管理系统中数据库名称不可重复。

if not exists:在创建数据库之前进行判断,只有该数据库不存在时才能执行创建的操作。此选项可以用来避免数据库已经存在而重复创建的错误。

[default] character set :指定数据库的默认字符集。

[default] collate :指定字符集的默认校对规则。

字符集是用来定义 MySQL 存储字符串的方式,校对规则定义了比较字符串的方式,解决排序和字符分组的问题。

字符集和校对规则是一对多的关系,每个字符集至少对应一个校对规则,MySQL 支持 39 种字符集的将近 200 种校对规则。

示例1:创建一个名为test的数据库

mysql> create database test;

示例2:避免重复创建的错误

mysql> create database if not exists test;

示例3:指定字符集和校对规则

mysql> create database if not exists test

-> default character set utf8

-> default collate utf8_general_ci;

为防止字符乱码的情况,MySQL 有时需要在创建数据库时明确指定字符集;在中国大陆地区,常用的字符集有 utf8 和 gbk。utf8 能够存储全球的所有字符,在任何国家都可以使用,默认的校对规则为 utf8_general_ci。

gbk 只能存储汉语涉及到的字符,不具有全球通用性,默认的校对规则为 gbk_chinese_ci。

查看数据库

在 MySQL 中,可查看当前用户权限范围以内的数据库。

语法:

show databases [like '数据库名'];like 子句是可选项,用于匹配指定的数据库名称,可以模糊匹配,也可以精确匹配。

示例1:查看当前用户权限内的所有数据库

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sakila |

| sys |

| test |

| test1 |

| test2 |

| world |

+--------------------+

示例2:使用like子句查看包含’test’的所有数据库

mysql> show databases like '%test%';

+-------------------+

| Database (%test%) |

+-------------------+

| test |

| test1 |

| test2 |

+-------------------+

示例3:查看数据库test的定义声明

mysql> show create database test;

+----------+---------------------------------------------------------------+

| Database | Create Database |

+----------+---------------------------------------------------------------+

| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ |

+----------+---------------------------------------------------------------+

修改数据库

创建好数据库也可以修改字符集和校对规则。

语法:

ALTER DATABASE [数据库名]

[[ DEFAULT ] CHARACTER SET ] [[ DEFAULT ] COLLATE ]数据库名称可以忽略,此时语句对应于默认数据库。

示例:修改test数据库的字符集和校对规则

mysql> alter database test

-> default character set gbk

-> default collate gbk_chinese_ci;

选择数据库

在 MySQL 中,use 语句用来完成一个数据库到另一个数据库的跳转。创建数据库之后,该数据库不会自动成为当前数据库,需要用 USE 来指定当前数据库,才能对该数据库及其存储的数据对象执行操作。

语法:

use ;

示例:将test指定为当前数据库

use test;

删除数据库

在 MySQL 中,删除数据库的同时会删除数据库中存储的所有对象和数据,因此需谨慎使用。

语法:

drop database [if exists] ;if exists:防止当数据库不存在时发生错误。

MySQL 安装后,系统会自动创建名为 information_schema 和 mysql 的两个系统数据库,系统数据库存放一些和数据库相关的信息,如果删除了这两个数据库,MySQL 将不能正常工作。

示例1:删除test数据库

mysql> drop database test;

示例2:避免数据库不存在的错误

mysql> drop database if exists test;

mysql删除原则_MySQL数据库的增删选查相关推荐

  1. 物理机存放mysql实例原则_MySQL数据库规范 (设计规范+开发规范+操作规范)

    I 文档定义 1.1 编写目的 为了在软件生命周期内规范数据库相关的需求分析.设计.开发.测试.运维工作,便于不同团队之间的沟通协调,以及在相关规范上达成共识,提升相关环节的工作效率和系统的可维护性. ...

  2. go语言mysql删除记录_MySQL数据库删除操作-Go语言中文社区

    删除数据库 DROP DATABASE [IF EXISTS] 数据库名; 例如:删除school数据库 IF EXISTS 为可选,判断是否存在,如果不存在则会抛出异常 删除数据表 DROP TAB ...

  3. mysql删除原则_MySQL入门-11:数据的增、删、改

    1.数据插入 2.数据更新 3.数据删除 4.更新和删除的指导原则 1.数据插入-INSERT 插入数据可以使用以下几种方式:插入完整的行 插入行的一部分 插入多行 插入某些查询的结果Syntax: ...

  4. 【MySQL 第三天数据库表 增删改查】

    [MySQL 第三天数据库表 增删改查]] [1]mysql数据库表创建命令 [2]mysql查看数据库下的表命令 [3]mysql查看表内容命令 [4]mysql修改数据库表 [4.1]mysql添 ...

  5. mysql 删除原理_MySQL权限原理及删除MySQL的匿名账户

    MySQL权限系统的工作原理 MySQL权限系统通过下面两个阶段进行认证: (1)对连接的用户进行身份认证,合法的用户通过认证,不合法的用户拒绝连接: (2)对通过认证的合法用户赋予相应的权限,用户可 ...

  6. centos72安装mysql配置密码_MySQL数据库之170419、Centos7下完美安装并配置mysql5.6

    本文主要向大家介绍了MySQL数据库之170419.Centos7下完美安装并配置mysql5.6 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. linxu环境: centos ...

  7. mysql权限表_MySQL 数据库赋予用户权限操作表

    MySQL清空数据库的操作:truncate table tablename; MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户 一.grant 普通数据 ...

  8. mysql case默认_MySQL数据库架构和同步复制流程

    在分布式系统里面,往往制约整个系统发展的瓶颈点就是数据库,所以数据库的架构和高可用以及数据库的切分都是我们值得花大力气去学习的. 首先我们来说说数据库的架构. 1.mysql主从架构,如图: 这种架构 ...

  9. mysql 苏勇_MySQL数据库基础学习笔记(整理自苏勇老师的MySQL基础课程视频)

    一.mysql安装及基本配置 1.安装 Mysql官网:www.mysql.com 开源版本(MySQL Community Server) --安装系统自带版本(如果需要更高版本可到官网下载) # ...

最新文章

  1. 学python心得体会500字-Python初学心得体会
  2. MySQL修改数据类型语句
  3. php 获取图片字节,php内置函数获取图片类型-exif_imagetype
  4. 网络的性能指标与分组交换网络
  5. 你还在盲目做抖音吗?
  6. 员工入职是一连串事件(转)
  7. Dell也来凑热闹,传将数月内发售Android手机Mini 3i
  8. MD5(JavaScript)
  9. 用python做一个车牌识别_python利用百度云接口实现车牌识别
  10. 126邮箱国外服务器,OUTLOOK连126邮箱能不能向国外新闻组投递邮件?哪些邮箱服务器可以?...
  11. 面试题53:vue数据的双向绑定原理(如何实现vue的双向绑定)
  12. Android自定义View实现相机对焦框
  13. Android音频系统之四AudioPolicy
  14. 北航计算机组成实验课,北航计算机组成实验Project4
  15. rtcp 的jitter buffer
  16. 100个优秀jQuery插件精选
  17. 格林纳达常驻WTO大使孙宇晨会见法国驻联合国日内瓦办事处代表
  18. GBASE 8C——SQL参考6 sql语法(12)
  19. uebs游戏_UEBS Ultimate Epic Battle电脑版
  20. 人脸识别在线上金融业务中的应用风险

热门文章

  1. C语言网络编程:close或者shutdown断开通信连接
  2. 吴裕雄--天生自然 高等数学学习:高阶偏导数
  3. jquery判断一个元素是否为某元素的子元素
  4. 微信服务号、公众号、企业号注册
  5. 关于mysql archive存储引擎-专门存储审计和日志数据
  6. EditPlus集成Java编译和运行命令组建轻量级Java SE开发工具
  7. MySQL 错误代码和消息
  8. Windows7防火墙服务无法启用怎么办
  9. python __setattr__ , __getattr__
  10. UVA 216 Getting in Line