• MySQL 常用命令(2)------数据库操作


    四、数据库操作

    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)'起了个别名。

     

     
  • 相关阅读:
    restframework 自定义返回响应格式
    restframework 分页器
    Python设计模式
    Pytest系列
    Pytest系列
    Pytest系列 -pytest-dependency 用例依赖
    restframework jwt登录验证
    restframework 自定义json返回格式
    Axure RP8 注册码
    LVM 移除PV步骤
  • 原文地址:https://www.cnblogs.com/zhm1985/p/13085306.html
Copyright © 2020-2023  润新知