zoukankan      html  css  js  c++  java
  • 数据库_6_SQL基本操作——库操作

    SQL基本操作——库操作:对数据库的增删改查

    一、新增数据库(创建)

    基本语法:create database 数据库名字 [库选项];

    库选项用来约束数据库,分为两个选项:1.字符集设定:charset/character set 具体字符集(数据存储的编码格式)                     常用的字符集:GBK和utf8(utf8中间不能加中划线或者下划线)

                      2.校对集设定:collate 具体校对集(数据比较的规则)

    创建一个扩展名为sql的文件,比如sql_2018_0503.sql(将其内容复制到Mysql命令窗口中)

    -- sql_2018_0503.sql内容:
    
    -- 双中划线+空格:注释(单行注释),也可以使用#号
    
    # 创建数据库
    create database mydatabase charset utf8;-- 创建一个名为mydatabase的数据库
    

    其中:数据库名字不能用关键字(已经被使用的字符)或者保留字(将来可能会用到的)

    # 创建关键字数据库(出错)
    create database database charset utf8;-- 创建一个名为database的数据库
    

    如果非要使用关键字或者保留字,name必须使用两个反引号(esc键下面的键在英文状态下的输出:`)

    # 使用反引号
    create database `database` charset utf8;
    

    使用中文数据库是可以的,但是有前提条件:保证服务器能够识别(建议不用)

    -- 创建中文数据库(直接创建是错误的,无论加不加反引号),本身不需要加反引号
    create database 中国 charset utf8; 
    create database `中国` charset utf8;
    
    -- 解决方法:告诉服务器当前中文的字符集是什么(查看方法:命令窗口左上角->属性->选项)
    set names gbk;
    create database 中国 charset utf8;-- 没有必要加反引号 
    

    当创建数据库的SQL语句执行之后,发生了什么?

    1. .在数据库系统中,增加了对应的数据库信息
    2. 会在保存数据的文件夹下:Data目录,创建一个对应数据库名字的文件夹

     

      3.每个数据库下都有一个opt 文件:保存了数据库选项

    注:校对集依赖字符集指的是:字符集改变校对集也会改变

    二、查看数据库

    1.查看所有数据库:

    -- 查看所有数据库
    show databases;
    

    2.查看指定部分的数据库:模糊查询

    show databases like 'pattern';  --pattern是匹配模式,  %:表示匹配多个字符, _:表示匹配单个字符
    
    -- 举例 创建两个数据库
    create database informationtest charset utf8;
    create database information_schema charset utf8;
    -- 匹配以informationtes开头的数据库
    show databases like 'informationtes_';
    -- 匹配以information开头的数据库 
    show databases like 'information%';
    -- 匹配以information_开头的数据库:_需要被转义
    show databases like 'information\_%';  --如果不转义将匹配到informationtest,information_schema
    

    3.查看数据库的创建语句:show creat database 数据库名字;

    -- 查看数据库创建语句
    show create database mydatabase;
    show create database `database`;   --关键字需要使用反引号
    

    三、更新数据库

    数据库名字不可以修改。

    数据库的修改仅限库选项:字符集和校对集(校对集依赖字符集,字符集改动,校对集会跟随改动)

    Alter database 数据库名字 [库选项];

    charset/character set [=] 字符集

    collate [=] 校对集

     

    -- 修改数据库informationtest的字符集()
    alter database informationtest charset GBK; -- 以前是utf8的
    

     

    四、删除数据库

    所有的操作中:删除是最简单的

    drop database 数据库名字;

    -- 删除数据库
    drop database informationtest;
    

     

    当删除数据库语句执行之后,发生了什么?

    1.在数据库内部看不到对应的数据库    利用show databases;查看

    2.在对应的数据库存储的文件夹内:数据库对应的文件夹也被删除(级联删除:里面的数据表全部删除)

    注意:数据库的删除不是闹着玩的,不要随意删除,应该先进行备份后操作。(删除不可逆,需负法律责任)

  • 相关阅读:
    Java_大数加法
    Java_找出最多的10个单词
    过滤文本敏感词
    JDK(Win10)下载与安装
    Agile PLM_统计物料消耗
    Java_扑克牌顺子
    Java8_stream_集合对象属性的合并
    Apache Maven下载与安装
    java泛型 无敌
    Java异常处理 无敌
  • 原文地址:https://www.cnblogs.com/tianqizhi/p/8987906.html
Copyright © 2011-2022 走看看