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中.操作如下:以下操作 ...
随机推荐
- why not ovp protection ?
HW MSM8917 PM8937 PMI8940 Question : Recently, I connect usb cable with 10V to the phone. Why does t ...
- HDU5036 Explosion(期望&&bitset)
#include <iostream> #include <cstring> #include <string> #include <vector> # ...
- 构建更好的HashMap
在7月份的那期 Java理论与实践(“并发集合类”)中,我们简单地回顾了可伸缩性的瓶颈,并讨论了怎么用共享数据结构的方法获得更高的并发性和吞吐量.有时候学习的最好方法是分析专家的成果,所以这个月我们将 ...
- Codeforces 323C Two permutations
题目描述 You are given two permutations pp and qq , consisting of nn elements, and mm queries of the for ...
- 用pid 取主窗口 hwnd
HWND GetHwndByPid(DWORD dwProcessID) { HWND h = GetTopWindow(); HWND retHwnd = NULL; while ( h ) { D ...
- opentracing学习入门
http://blog.csdn.net/akfly/article/details/53975388
- [转]使用Wireshark来检测一次HTTP连接过程
Wireshark是一个类似tcpdump的嗅探软件,界面更人性化一些,今天我用它来检测一次HTTP连接过程. 安装好之后,先配置一下,选择Capture->Options,先设定你要嗅探的网络 ...
- [置顶]
一个简单好用的zabbix告警信息发送工具
之前使用邮件和短信发送zabbix告警信息,但告警信息无法实时查看或者无法发送,故障无法及时通知运维人员. 后来使用第三方微信接口发送信息,愉快地用了一年多,突然收费了. zabbix告警一直是我的痛 ...
- 更改VS2010 工程名的方法
哇~~~~~~~啦啦啦~~~~~~~~ 太开心了,通过不断的尝试,我终于知道怎么更改VS2010的工程名了!!! 下面分享给大家: 1.打开自己想要更改名字的工程,用ctrl+h在整个项目中把想更改的 ...
- MQ学习-RabbitMQ, ActiveMQ, Kafka等
之前学习过RabbitMQ,并且还安装过.安装记录的文章如下: Erlang:http://www.cnblogs.com/charlesblc/p/5512380.html RabbitMQ:htt ...