四、数据库操作

1、创建数据库

注意:创建数据库前要先连接mysql数据库

语法:create database <数据库名>

例:创建数据库并分配用户

1.create database 数据库名

2.GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON 数据库名.* TO 数据库名@localhost IDENTIFIED BY '密码';

3.SET PASSWORD FOR '数据库名'@'localhost' = OLD_PASSWORD('密码');

2、显示数据库

语法:show databases

注意:为了不再显示的时候乱码,要修改数据库默认编码。以下以GBK编码页面为例进行说明

1.修改MYSQL的配置文件:my.ini里面修改default-character-set=gbk   或 utf8mb4

2.代码运行时修改:
   ①Java代码:jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=gbk
   ②PHP代码:header("Content-Type:text/html;charset=gb2312");
   ③C语言代码:int mysql_set_character_set( MYSQL * mysql, char * csname);
该函数用于为当前连接设置默认的字符集。字符串csname指定了1个有效的字符集名称。连接校对成为字符集的默认校对。该函数的工作方式与SET NAMES语句类似,但它还能设置mysql- > charset的值,从而影响了由mysql_real_escape_string() 设置的字符集。

3、删除数据库

语法:drop database <数据库名>

例:删除存在的库

mysql> drop database test111;
Query OK, 0 rows affected (0.01 sec)

删除不存在的库

mysql> drop database test111;
ERROR 1008 (HY000): Can't drop database 'test111'; database doesn't exist

//发生错误,不能删除'test111'数据库,该数据库不存在

if exists 判断数据库是否存在,不存在也不产生错误 

mysql> drop database if exists drop_database;
   Query OK, 0 rows affected, 1 warning (0.00 sec)//产生一个警告说明此数据库不存在
   mysql> create database drop_database;
   Query OK, 1 row affected (0.00 sec)
   mysql> drop database if exists drop_database;
   Query OK, 0 rows affected (0.00 sec)

4、连接数据库

语法:use <数据库名>

mysql> use test111

Database changed

mysql> use test111
ERROR 1049 (42000): Unknown database 'test111'   //数据库不存在

使用USE语句为一个特定的当前的数据库做标记,不会阻碍您访问其它数据库中的表。下面的例子可以从db1数据库访问作者表,并从db2数据库访问编辑表:
   mysql> USE db1;
   mysql> SELECT author_name,editor_name FROM author,db2.editor
       ->        WHERE author.editor_id = db2.editor.editor_id;

USE语句被设立出来,用于与Sybase相兼容。

5、查看当前选择的数据库

语法:mysql> select database();

MySQL中SELECT命令类似于其他编程语言里的print或者write,你可以用它来显示一个字符串、数字、数学表达式的结果等等。

下面看下如何使用MySQL中SELECT命令的特殊功能

1.显示MYSQL的版本

mysql> select version();
+------------+
| version() |
+------------+
| 5.7.29-log |
+------------+
1 row in set (0.00 sec)

2. 显示当前时间

mysql> select now();
+---------------------+
| now() |
+---------------------+
| 2020-06-10 15:45:45 |
+---------------------+
1 row in set (0.00 sec)

3. 分别显示年月日

mysql> SELECT DAYOFMONTH(CURRENT_DATE);
+--------------------------+
| DAYOFMONTH(CURRENT_DATE) |
+--------------------------+
| 10 |
+--------------------------+
1 row in set (0.00 sec)

mysql> SELECT MONTH(CURRENT_DATE);
+---------------------+
| MONTH(CURRENT_DATE) |
+---------------------+
| 6 |
+---------------------+
1 row in set (0.00 sec)

mysql> SELECT YEAR(CURRENT_DATE);
+--------------------+
| YEAR(CURRENT_DATE) |
+--------------------+
| 2020 |
+--------------------+
1 row in set (0.00 sec)

4.显示字符串

mysql> SELECT "Hello World";
+-------------+
| Hello World |
+-------------+
| Hello World |
+-------------+
1 row in set (0.00 sec)

5.计算器功能

mysql> select ((5 * 5) / 10 ) + 25;
+----------------------+
| ((5 * 5) / 10 ) + 25 |
+----------------------+
| 27.5000 |
+----------------------+
1 row in set (0.00 sec)

6. 串接字符串
select CONCAT(f_name, " ", l_name) 
AS Name 
from employee_data 
where title = 'Marketing Executive'; 
+---------------+ 
| Name          | 
+---------------+ 
| Monica Sehgal | 
| Hal Simlai    | 
| Joseph Irvine | 
+---------------+ 
3 rows in set (0.00 sec)

注意:这里用到CONCAT()函数,用来把字符串串接起来。另外,我们还用到以前学到的AS给结果列'CONCAT(f_name, " ", l_name)'起了个别名。
 

MySQL 常用命令(2)------数据库操作的更多相关文章

  1. MYSQL初级学习笔记一:MYSQL常用命令和数据库操作(DDL)!(视频序号:初级_3,4)

    知识点一:MYSQL常用命令(3) 登入方法:一,mysql –u 账号 –p 密码 退出方法:一,EXIT,QUIT 修改MYSQL命令提示符: 连接上客户机之后,通常使用prompt命令修改: 连 ...

  2. MySQL常用命令(数据库,表相关的命令)

    数据库相关命令 显示数据库列表 mysql> SHOW  DATABASES; 创建数据库 mysql> CREATE  DATABASE  库名; 如下,创建一个名为crashcours ...

  3. MySQL常用sql语句-----数据库操作

    在数据库操作中,操作基本都是围绕增删改查来操作.简称CRUD C创建创建 R读取/检索查询 U Update修改 D删除删除 在数操作数据库时,所有的数据库语句都要以分号结束 数据库操作不区分大小写 ...

  4. MySql常用命令集Mysql常用命令showdatabases;显示数据库createdatab

    MySql 常用命令集 Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop ...

  5. Linux centosVMware MySQL常用操作设置更改root密码、连接mysql、mysql常用命令

    一.设置更改root密码 启动mysql /usr/local/mysql/bin/mysql -uroot 更改环境变量PATH,增加mysql绝对路径 使mysql -uroot永久生效需要编辑, ...

  6. MYSQL常用命令集合(转载)

    文章出处:http://www.cnblogs.com/q1ng/p/4474501.html 1.导出整个数据库mysqldump -u 用户名 -p --default-character-set ...

  7. MYSQL常用命令集合

    1.导出整个数据库 mysqldump -u 用户名 -p --default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqld ...

  8. MySQL 常用命令大全

    Mysql常用命令行大全 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键 ...

  9. linux 下 mysql 常用命令

    linux 下 mysql 常用命令   阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...

  10. Mysql常用命令 详细整理版

    Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database na ...

随机推荐

  1. vue2的反向代理

    // 在vue.config.js中的配置项配置 devServer: { proxy: { // 当我们的本地的请求 有/api的时候,就会代理我们的请求地址向另外一个服务器发出请求 '/api': ...

  2. vue父子组件传值的方式

    给子组件传值: this.$refs.child.xx(query); 调用父组件的方法:this.$parent.xx();

  3. mysql创建存储过程造数据

    delimiter $$$ DROP PROCEDURE zqtest6; create procedure zqtest6() begin declare i int default 0; set ...

  4. oracle的dblink创建连接查询及使用

    https://www.cnblogs.com/muhai/p/15527463.html https://www.cnblogs.com/leipei2352/archive/2011/04/21/ ...

  5. airtest截图后放在allure报告里面。

    #需要导入的包 from airtest.aircv import * from airtest.aircv.utils import cv2_2_pil screen1 = G.DEVICE.sna ...

  6. apk文件结构

    APK (Android Package) 文件,是一个后缀名为.apk的压缩文件,APK文件中包含了一个Android应用程序的所有内容,是Android平台用于安装应用程序的文件. assets  ...

  7. ATX server简介及环境搭建

    简介 atx server 是移动设备管理平台: 搭建这样的一个平台,需要  python3.x + nodejs+rethinkdb,及atxserver2和atxserver2-android-p ...

  8. 动态构造LINQ表达式导致EFCore内存泄漏

    EFCore版本 v3.1.4 上述代码模拟100次的Id包含查询,并且demoExpr1和demoExpr2使用两种方式构造LINQ表达式,第二种会导致内存泄漏. 使用第一种方法构造查询条件的值,结 ...

  9. 设置apt安装软件时是否保留下载的deb包(apt不清理/apt下载软件包)

    原文:https://blog.csdn.net/FoxBryant/article/details/123226245 不喜欢CSDN,记录一下. 默认情况下使用apt install安装包时,会自 ...

  10. ubuntu 16.04升级到18.04 出现apt-get问题解决

    0.背景 编译webrtc安卓版时要升级系统,升级到18.04之后,安装安卓环境时出现以下问题(./build/install-build-deps.sh): libasan2-armhf-cross ...