MySQL数据库的常见操作(七)
MySQL数据库的常见操作
1、创建数据库
2、创建重名的数据库以及如何查看警告信息
3、设置数据库的编码方式(默认为utf8)
4、修改和查看数据库的编码方式
5、删除数据库
6、6、删除已经删除了的数据库
1、创建数据库

花括号代表必须是要有的,中括号代表是可有可不有,竖线是代表选择,即是从花括号里选择。
这里的查询和我们后面学习的查找,是两个截然不同的概念。
一行被影响,当我们把数据库创建成功之后,它要把我们数据库创建成功的结果,要放到系统数据库里,所以出现一行被影响。


mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.05 sec)
mysql> create database dajiangtai;
Query OK, 1 row affected (0.04 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| dajiangtai |
| mysql |
| test |
+--------------------+
4 rows in set (0.01 sec)
mysql>
2、创建重名的数据库以及如何查看警告信息


mysql> create database dajiangtai;
ERROR 1007 (HY000): Can't create database 'dajiangtai'; database exists
mysql> create database if not exists dajiangtai;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> show warnings;
+-------+------+-----------------------------------------------------+
| Level | Code | Message |
+-------+------+-----------------------------------------------------+
| Note | 1007 | Can't create database 'dajiangtai'; database exists |
+-------+------+-----------------------------------------------------+
1 row in set (0.00 sec)
mysql>
我们可以看到警告级别是Note,警告信息还是我们之前看到的那个信息。
只是说,用了 if not exists 不会把错误信息直接反馈到客户端而已。默认的编码方式,是配置文件my.ini里的
查看某数据库的编码方式是什么?

mysql> show create database dajiangtai;
+------------+-----------------------------------------------------------------
-----+
| Database | Create Database
|
+------------+-----------------------------------------------------------------
-----+
| dajiangtai | CREATE DATABASE `dajiangtai` /*!40100 DEFAULT CHARACTER SET latin
1 */ |
+------------+-----------------------------------------------------------------
-----+
1 row in set (0.00 sec)
mysql>
这条指令的意思是,数据库创建时所使用的指令是什么。可以看到数据库名称是dajiangtai,但是,编码方式是默认的latin1。
MySQL5.7版本
[client]下添加
default-character-set=utf8
[mysqld]下添加
character-set-server=utf8
如果不这样改,会导致5.7版本mysql无法打开。不信你试试
MySQL5.5版本
[client]下添加
default-character-set=utf8
[mysqld]下添加
default-character-set=utf8
MySQL5.1版本
[client]下添加
default-character-set=utf8
[mysqld]下添加
character-set-server=utf8
重启MySQL生效即可。
3、设置数据库的编码方式(默认为utf8)

mysql> create database if not exists dajiangtai character set utf8;
Query OK, 1 row affected (0.05 sec)
mysql> show create database dajiangtai;
+------------+-----------------------------------------------------------------
---+
| Database | Create Database
|
+------------+-----------------------------------------------------------------
---+
| dajiangtai | CREATE DATABASE `dajiangtai` /*!40100 DEFAULT CHARACTER SET utf8
*/ |
+------------+-----------------------------------------------------------------
---+
1 row in set (0.00 sec)
mysql>

mysql> create database if not exists dajiangtai2 character set gbk;
Query OK, 1 row affected (0.01 sec)
mysql> show create database dajiangtai2;
+-------------+----------------------------------------------------------------
----+
| Database | Create Database
|
+-------------+----------------------------------------------------------------
----+
| dajiangtai2 | CREATE DATABASE `dajiangtai2` /*!40100 DEFAULT CHARACTER SET gbk
*/ |
+-------------+----------------------------------------------------------------
----+
1 row in set (0.00 sec)
mysql>
这里注意,以后随着我们的业务和数据增加,比如,dajiangtai2这个数据库,在创建时编码方式没注意,比如已经是gbk编码方式了,那么,我们不要想当时删除dajiangtai2这个数据库,再来重新创建,这是一笔非常大的损失。
那么,我们如何在不丢失这些数据记录的基础上,怎么把编程方式由原来的gbk为uft8?
4、修改和查看数据库的编码方式

mysql> alter database dajiangtai2 character set utf8;
Query OK, 1 row affected (0.00 sec)
mysql> show create database dajiangtai2;
+-------------+-----------------------------------------------------------------
-----+
| Database | Create Database
|
+-------------+-----------------------------------------------------------------
-----+
| dajiangtai2 | CREATE DATABASE `dajiangtai2` /*!40100 DEFAULT CHARACTER SET utf
8 */ |
+-------------+-----------------------------------------------------------------
-----+
1 row in set (0.00 sec)
mysql>
5、删除数据库


mysql> drop database dajiangtai;
Query OK, 0 rows affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| dajiangtai2 |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql>
6、删除已经删除了的数据库


mysql> drop database dajiangtai;
ERROR 1008 (HY000): Can't drop database 'dajiangtai'; database doesn't exist
mysql> drop database if exists dajiangtai;
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql>
MySQL数据库的常见操作(七)的更多相关文章
- 【代码学习】MYSQL数据库的常见操作
---恢复内容开始--- ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与 ...
- 【代码总结】MYSQL数据库的常见操作
============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服 ...
- Flask中Mysql数据库的常见操作
from flask import Flask,render_template #导入第三方链接库sql点金术 from flask_sqlalchemy import SQLAlchemy #建立对 ...
- MySQL数据库的常见操作
1.查看所有的数据库 1 show databases; 2.创建数据库 后面的时编码格式 1 create database dbName charset='utf8'; 3.使用/切换数据库 1 ...
- Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令
Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令: show databases 1.2 创建数据库 命令: Create database 数据库名 ...
- 第二百七十九节,MySQL数据库-pymysql模块操作数据库
MySQL数据库-pymysql模块操作数据库 pymysql模块是python操作数据库的一个模块 connect()创建数据库链接,参数是连接数据库需要的连接参数使用方式: 模块名称.connec ...
- 第二百七十八节,MySQL数据库-表内容操作
MySQL数据库-表内容操作 1.表内容增加 insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据 insert into 表 (列名,列名. ...
- python操作mysql数据库的相关操作实例
python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...
- linux系统上Mysql数据库导入导出操作
需求:把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中.操作如下:以下操作 ...
随机推荐
- [LeetCode] Convert Sorted List to Binary Search Tree DFS,深度搜索
Given a singly linked list where elements are sorted in ascending order, convert it to a height bala ...
- VS恢复默认设置
通过“导入和导出设置”实现VS恢复默认设置 1.快捷步骤 工具 → 导入和导出设置 → 重置所有设置 → 下一步 → 选择“是否保存当前设置”,下一步 → 选择“要重置的开发语言(如,Visual C ...
- 牛客网 牛客小白月赛2 G.文
G.文 链接:https://www.nowcoder.com/acm/contest/86/G 这个题wa了一发,有点智障,浮点数,式子里面要*1.0,忘了,然后wa了,改了就过了(脑子有坑) 代码 ...
- Codeforces 371B Fox Dividing Cheese(简单数论)
题目链接 Fox Dividing Cheese 思路:求出两个数a和b的最大公约数g,然后求出a/g,b/g,分别记为c和d. 然后考虑c和d,若c或d中存在不为2,3,5的质因子,则直接输出-1( ...
- Java I/O系统学习系列一:File和RandomAccessFile
I/O系统即输入/输出系统,对于一门程序语言来说,创建一个好的输入/输出系统并非易事.因为不仅存在各种I/O源端和想要与之通信的接收端(文件.控制台.网络链接等),而且还需要支持多种不同方式的通信(顺 ...
- POJ 2484 A Funny Game [博弈]
题意:n枚硬币围成一个圈,每次每个人可以从中取走一枚或者相邻的两枚(如果两枚硬币原本中间隔着一枚硬币,后来被取走,这两枚硬币不算相邻).谁取走最后一枚硬币谁就赢了. 思路:我们可以找找规律. 首先,n ...
- 2016北京集训测试赛(八)Problem C: 直径
Solution 一个定理: 把两棵树用一条边练成一棵树后, 树的直径在原来两棵树的四个直径端点中产生. 放到这一题, 我们通过DP先求出大树中以每个点为根的子树中的直径, 再取每棵小树中与其他树有连 ...
- dede实战系统:更换成kindEditor编辑器
最近由于项目需要,在搞dedeCMS,发现dede自带的ckEditor在word粘贴这方面做得不是很好,从word上面直接ctrl+V的内容跟wrod上面的表现样式相差很大,客户很不爽(因为是编辑的 ...
- {dede:sql}标签的用法
sql标签可以称得上是个万能标签了,查询数据库将其输出,这里介绍一些关于这个标签的用法: 1.用来输出统计内容,这个是不错的,举个例子,我们来统计下总共发了多少的文章,思路就是输出dede_addon ...
- JSON API:用 JSON 构建 API 的标准指南中文版
译文地址:https://github.com/justjavac/json-api-zh_CN 假设你和你的团队以前争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 ...