MySQL数据库(7)----数据库的选择、创建、删除和更改
1.选择数据库
使用 USE 语句可以选择数据库,并把它指定为MySQL服务器连接的默认(当前)数据库:
USE db_name;
要想选择数据库,用户必须要具备相应的访问权限;否则,会出现错误提示。
选择了一个数据库,并不意味着它就是此次会话期间的默认数据库。用户可以根据需要调用 USE 语句,从而实现在两个数据库之间的任意切换。同时,选择了一个数据库也并不意味着只能使用该库里的表。由于已经有了一个默认数据库,因此如果想引用其他库里的表,则需要使用与这些表相对应的那个库的标识符来限定它们的名字。例如,用户实现没有把 sampdb 选为默认数据库,但是想检索其中 sutdents 表里的内容,那么可以使用如下所示的查询语句:
SELECT * FROM sampdb.students;
2.创建数据库
创建数据库的语法是:
CREATE DATABASE db_name;
先决条件是:这个数据库必须不能是已经存在的,并且必须拥有 CREATE 权限。
CREATE DATABASE 语句有几个可选子句。完成语法如下:
CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset] [COLLATE collation];
在默认情况下,当用户试图创建已经存在的数据库时,系统会报错。如果要避免这类错误,并且只想在给定数据库尚不存在时才创建它,那么可以加上 IF NOT EXISTS 子句:
CREATE DATABASE IF NOT EXISTS db_name;
在默认情况下,服务器的字符集和排序规则将成为新建数据库的默认字符集和排序规则。显式设置数据库属性的方法是,使用 CHARACTER SET 子句和 COLLATE 子句。例如:
CREATE DATABASE mydb CHARACTER SET utf8 COLLATE utf8_icelandic_ci
如果只给出了 CHARACTER SET, 而没有提供 COLLATE ,则意味着使用这个给定字符集的默认排序规则。如果只给出了 COLLATE,而没有提供 CHARACTER SET,则意味着使用排序规则的名字的开头部分来确定字符集。
在创建数据库时,MySQL服务器会在其数据目录下创建一个目录,其名与数据库名相同。这个新目录被称为数据库目录。服务器还会在这个目录下创建一个名为 db.opt 的文件,用于存储一些属性,如数据库的字符集和排序规则。当以后在这个数据库里创建表时,如果表的定义里没有指定其自己的默认字符集和排序规则,那么数据库的这些默认规则都会成为该表的默认设置。
3.删除数据库
如果用户有 DROP 权限,那么删除数据库跟创建数据库一样简单:
DROP DATABASE db_name;
不要随意使用 DROP DATABASE 语句。因为它会删掉数据库和其中的所有内容(表、存储历程等)。此时,这个数据库也会永远消失,除非用户定期对它做备份,才有可能把它恢复过来。
一个数据库就是MySQL数据目录里的一个目录,这个目录主要用于存放对象,如表、视图和触发器。如果 DROP DATABASE 语句执行失败,那么通常是因为那个数据库的目录里还包含有一些与数据库对象无关的文件。DROP DATABASE 语句不会删除这类文件,因而也就不会删除那个目录。这意味着,那个数据库目录依然存在,并且如果调用 SHOW DATABASES 语句,它仍然会显示出来。想要真正删除那个数据库,就要手动删除该数据库子目录里残留的文件和目录,然后再调用 DROP DATABASE 语句。
4.更改数据库
如果拥有 ALTER 权限,则可以使用 ALTER DATABASE 语句来更改数据库的全局属性。目前,数据库的全局属性只包含默认字符集和排序规则:
ALTER DATABASE [db_name] [CHARACTER SET charset ] [COLLATE collation];
在前面 CREATE DATABASE 的讨论里,讲述了 CHARACTER SET 子句和 COLLATE 子句的效果,并且要求至少给定它们当中的一个。
如果省略了数据库名,那么 ALTER DATABASE 会应用到默认数据库。
MySQL数据库(7)----数据库的选择、创建、删除和更改的更多相关文章
- mysql 复习与学习(二)数据库及表结构的创建删除
mysql -h localhost -uroot -p123456 //连接数据库 show databases; //查看数据库 create database if not exists db_ ...
- 数据库的SQL基本用法 创建 删除 查询 修改
1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname 3.说明:备份sql server--- 创建 备份数据的 ...
- MySQL 创建删除和选择数据库
使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 删除数据库 drop database <数据库名>; 选择数据库 use 数据库名 Datab ...
- 第二百七十六节,MySQL数据库,【显示、创建、选定、删除数据库】,【用户管理、对用户增删改查以及授权】
MySQL数据库,[显示.创建.选定.删除数据库],[用户管理.对用户增删改查以及授权] 1.显示数据库 SHOW DATABASES;显示数据库 SHOW DATABASES; mysql - 用户 ...
- Mysql笔记【1】-数据库的基本操作(创建/删除)
1.创建数据库 创建数据库(如果存在,则报错) #创建名称为test的数据库 create database test 查询创建完的数据库 show databases 2.删除数据库 删除数据库(如 ...
- MySQL 启动、关闭、选择数据库等命令
一.MySQL服务的启动和停止 1.net 命令来启动或停止mysql服务 net stop mysql(mysql是指你真正装的服务,如果装的是 mysql5,必须写成 net stop mysql ...
- 【数据库】8.0 MySQL入门学习(八)——创建并使用数据库、获得数据库和表的信息
1.0 使用SHOW语句找出服务器上当前存在什么数据库: mysql> SHOW DATABASES; 每台机器上的数据库列表是不同的,但是很可能有mysql和test数据库.mysql是必需的 ...
- ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...
- 用MySQL创建数据库和数据库表
1.使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; +----------+ | Database | +----------+ | mysql ...
- 由mysql数据库基础上的php程序实现单词的查询、删除、更改和查询
我做了一个php程序,将表单数据添加到数据库,借用mysql扩展库函数实现对mysql数据库的操作,能够实现添加单词.删除单词.更新和查询单词.运行环境是普通的mysql数据库和php.Apache服 ...
随机推荐
- switch case执行顺序
public class SwitchCase { public static void main(String[] args) { System.out.println(switchFun(4)); ...
- Java线程池的选择
在java的concurrent.Executors主要提供两种线程池:无固定线程数但有限制任务队列的cachedThreadPool与有固定线程数但无任务队列限制的fixedThreadPool,这 ...
- (三)Audio子系统之AudioRecord.startRecording
在上一篇文章<(二)Audio子系统之new AudioRecord()>中已经介绍了Audio系统如何创建AudioRecord对象以及输入流,并创建了RecordThread线程,接下 ...
- 关于 maven 打包直接运行的 fat jar (uber jar) 时需要包含本地文件系统第三方 jar 文件的问题
关于maven打包fat jar (uber jar) 时需要包含本地文件系统第三方jar文件的问题,今天折腾了一整天.最后还是用了spring boot来做.下面是几篇关于打包的有参考价值的文章,以 ...
- Mac 10.12安装IntelliJ出品的数据库管理工具DataGrip
下载: (链接: https://pan.baidu.com/s/1nvJw88T 密码: srv2) 安装参考: http://www.cnblogs.com/EasonJim/p/7868645. ...
- (转)DB2下载地址总结
原文:https://blog.csdn.net/huozengguang/article/details/58602910 DB2 v8.2,v9.1,v9.5,v9.7下载地址 下列都是完全版包含 ...
- Linux系统编程:文件I/O编程
文件I/O操作在Linux编程时是经常会使用到的一个内容,通常可以把比较大的数据写到一个文件中来进行存储或者与其他进程进行数据传输,这样比写到一个全局数组或指针参数来实现还要方便好多. 一.文件常用操 ...
- wap webapp app区别
“手机WAP版网站”.“手机触屏版网站”.“手机APP应用软件”: wap webapp app区别 电脑版:台式机或者笔记本访问,兼容各个浏览器: Wap版:用于传统智能手机,屏幕小,适合使用手机键 ...
- 再学C/C++ 之 指针常量 和 常量指针
(1)指针常量,将指针的指向当成常量.即指针变量的值只能在定义的时候初始化,定义后不能修改,也就是说不能改变指针变量的指向.但是不影响所指对象的访问特征.其定义形式为: 类型 * const 指针 / ...
- hibernate3.3.2搭建Junit日志环境
搭建好log4j日志环境后,再来搭建Junit测试环境: 测试代码放在另外一个目录下,项目右键,new一个source folder,源代码目录,放我们的测试代码,名字test.src放源代码. 比较 ...