• Mysql数据库常用操作整理


    0.说明

    MySQL数据库是一个十分轻便的数据库管理系统,相比大型的数据库管理系统如Oracle,MySQL更拥有轻便、灵活、开发速度快的特色,更适用于中小型数据的存储与架构,被数以万计的网站采用。从5版本以后,陆续支持了游标、触发器、事务、存储过程等高级应用,这也给MySQL的易用性和企业服务的发展添加了重要的砝码。

    一. 数据库操作

    1. 查看数据库

    SHOW DATABASES;

    2. 创建数据库

    CREATE DATABASE db_name; #db_name为表名

    3. 使用数据库

    USE db_name;

    4. 删除数据库

    DROP DATABASE db_name;

    二. 创建表

    1. 创建表

    CREATE TABLE table_name
    (
        id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
        name char(60)       NOT NULL,
        score int           NOT NULL,
        PRIMARY KEY(id)     #设置主键
    )ENGINE=InnoDB;

    2. 复制表

    CREATE TABLE tb_name2 SELECT * FROM tb_name;

    3. 创建临时表

    CREATE TEMPORARY TABLE tb_name; #(这里和创建普通表一样)

    4. 查看数据库中可用的表

    SHOW TABLES;

    5. 查看表的结构

    DESCRIBE tb_name;

    6. 删除表

    DROP TABLE tb_name;

    7. 表重命名

    RENAME TABLE name_old TO name_new;

    三. 修改表

    ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;
    ALTER TABLE tb_name DROP address;
    ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

    四. 插入数据

    1. 插入数据

    INSERT INTO tb_name(id,name,score) VALUES(NULL,'张三',140),(NULL,'张四',178), (NULL,'张五',134);

    2. 插入检索出来的数据

    INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

    3.复制一条记录(只有id不同)

    insert into article(id, title,keywords,desc,contents) select 101,title,keywords,desc,contents from article where article_id = 100;

    扩展

    从不同的表复制
    insert into 表1 select * from 表2 where id =** ;
     
    
    同一张表中复制(无主键)
    insert into 表1 select * from 表2 where id =** ;
    
    
    同一张表中复制(有主键)
    insert into 表1(字段1,字段2,字段3) select 字段1,字段2,字段3 from 表1 where id= ** ; 

    五. 更新数据

    UPDATE tb_name SET score=189 WHERE id=2;
    UPDATE tablename SET columnName=NewValue [ WHERE condition ]

    六. 常用查询

    1. 通配符

    SELECT prod_id, prod_name
    FROM tb_name
    WHERE prod_name LIKE 'jet%';    #%匹配任何字符出现任何次数
    SELECT prod_id, prod_name
    FROM tb_name
    WHERE prod_name LIKE '_ jet';   #_ 匹配一个字符

    2. 拼接

    select CONCAT(task_desc, '_', task_class, '_', id) as tab from taskclass_info

    结果

    任务1_6208_219933
    任务2_6209_220001
    

    3. 用某个字符做拼接福

    select CONCAT_WS(separator, str1, str2,...) from ***

    其中separator是连接符

      

  • 相关阅读:
    linux面试常问命令
    图卷积网络 GCN Graph Convolutional Network(谱域GCN)的理解和详细推导
    总结一些牛客网上 的算法岗面试题
    Pytorch-Tensor基本操作
    C++使用代码创建一个Windows桌面应用程序
    Windows中的消息与消息队列
    解决COM组件在WPF设计器中命名空间不存在XXX的问题(附带如何在WPF中使用APlayer引擎)
    Mybatis的一级缓存
    面试题:zookeeper实现分布式锁
    sublime text 文件默认打开格式
  • 原文地址:https://www.cnblogs.com/kaituorensheng/p/4124925.html
Copyright © 2020-2023  润新知