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
*/ |
+-------------+-----------------------------------------------------------------
-----+
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数据库的常见操作(七)的更多相关文章

  1. 【代码学习】MYSQL数据库的常见操作

    ---恢复内容开始--- ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与 ...

  2. 【代码总结】MYSQL数据库的常见操作

    ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服 ...

  3. Flask中Mysql数据库的常见操作

    from flask import Flask,render_template #导入第三方链接库sql点金术 from flask_sqlalchemy import SQLAlchemy #建立对 ...

  4. MySQL数据库的常见操作

    1.查看所有的数据库 1 show databases; 2.创建数据库  后面的时编码格式 1 create database dbName charset='utf8'; 3.使用/切换数据库 1 ...

  5. Vc数据库编程基础MySql数据库的常见库命令.跟表操作命令

    Vc数据库编程基础MySql数据库的常见操作 一丶数据库常见的库操作 1.1查看全部数据库 命令:  show databases 1.2 创建数据库 命令: Create database 数据库名 ...

  6. 第二百七十九节,MySQL数据库-pymysql模块操作数据库

    MySQL数据库-pymysql模块操作数据库 pymysql模块是python操作数据库的一个模块 connect()创建数据库链接,参数是连接数据库需要的连接参数使用方式: 模块名称.connec ...

  7. 第二百七十八节,MySQL数据库-表内容操作

    MySQL数据库-表内容操作 1.表内容增加 insert into 表 (列名,列名...) values (值,值,值...); 添加表内容添加一条数据 insert into 表 (列名,列名. ...

  8. python操作mysql数据库的相关操作实例

    python操作mysql数据库的相关操作实例 # -*- coding: utf-8 -*- #python operate mysql database import MySQLdb #数据库名称 ...

  9. linux系统上Mysql数据库导入导出操作

    需求:把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中.操作如下:以下操作 ...

随机推荐

  1. 给所有ajax请求增加随机数

    var origionAjax=$.ajax $.ajax=function(obj){ obj.url=(obj.url).indexOf("?")>-1?(obj.url ...

  2. git使用代理clone加速

    不设置代理10kb/s不到....,设置后,500kb/s左右跑- 开shadowsocks,代理127.0.0.1:1080 编写一个脚本 /YOUR PATH/gitproxy.sh #!/bin ...

  3. cogs——1008. 贪婪大陆(清华巨佬代码)——树状数组

    1008. 贪婪大陆 ★★   输入文件:greedisland.in   输出文件:greedisland.out   简单对比时间限制:1 s   内存限制:128 MB 试题四:贪婪大陆  [题 ...

  4. Unique Binary Search Trees II - LeetCode

    Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...

  5. Loj #124. 除数函数求和

    链接:https://loj.ac/problem/124 就是筛一下积性函数. #include<bits/stdc++.h> #define ll long long #define ...

  6. SecureCRT设置和Xshell一样的快速命令集(使用快捷键输入命令和密码)

    编辑想要的命令 提示:想要回车直接输入[\r]

  7. mysql-实现远程连接(授权法)

    远程连接阿里云主机的mysql,遇到以下问题: 1.连接被拒,无法连接 可能原因:1.3306(默认)端口未开放,在控制台设置防火墙规则: 2. host字段的值改为%就表示在任何客户端机器上能以ro ...

  8. IOS 开发之 Method Swizzling

    ios 分类中如果增加的方法与被扩展的类方法名重复,则原方法就没法被调用….看以下例子 例如: @interface ClassA : NSObject - (NSString *) myMethod ...

  9. 安装 Groovy

    brew install groovy http://wiki.jikexueyuan.com/project/groovy-introduction/install-groovy.html

  10. String转Map的工具类

    借鉴代码 public class StringToMapUtil { public static Map<String, String> getValue(String param) { ...