DC's blog DC's blog
首页
  • 计算机基础
  • linux基础
  • mysql
  • git
  • 数据结构与算法
  • axure
  • english
  • docker
  • opp
  • oop
  • 网络并发编程
  • 不基础的py基础
  • 设计模式
  • html
  • css
  • javascript
  • jquery
  • UI
  • 第一次学vue
  • 第二次学vue
  • Django
  • drf
  • drf_re
  • 温故知新
  • flask
  • 前后端不分离

    • BBS
    • 订单系统
    • CRM
  • 前后端部分分离

    • pear-admin-flask
    • pear-admin-django
  • 前后端分离

    • 供应链系统
  • 理论基础
  • py数据分析包
  • 机器学习
  • 深度学习
  • 华中科大的网课
  • cursor
  • deepseek
  • 杂文
  • 罗老师语录
  • 关于我

    • me
  • 分类
  • 归档
GitHub (opens new window)

DC

愿我一生欢喜,不为世俗所及.
首页
  • 计算机基础
  • linux基础
  • mysql
  • git
  • 数据结构与算法
  • axure
  • english
  • docker
  • opp
  • oop
  • 网络并发编程
  • 不基础的py基础
  • 设计模式
  • html
  • css
  • javascript
  • jquery
  • UI
  • 第一次学vue
  • 第二次学vue
  • Django
  • drf
  • drf_re
  • 温故知新
  • flask
  • 前后端不分离

    • BBS
    • 订单系统
    • CRM
  • 前后端部分分离

    • pear-admin-flask
    • pear-admin-django
  • 前后端分离

    • 供应链系统
  • 理论基础
  • py数据分析包
  • 机器学习
  • 深度学习
  • 华中科大的网课
  • cursor
  • deepseek
  • 杂文
  • 罗老师语录
  • 关于我

    • me
  • 分类
  • 归档
GitHub (opens new window)
  • 计算机基础

  • linux基础

  • mysql

    • 基础

      • install_db
      • db_command
        • 数据库
        • 数据表
        • 表记录
      • imp_knowledge
      • table_field
      • table_relation
      • permissions
      • single_query
      • multi_query
      • query_practice
      • pymysql
      • just_know
      • 补充(1)
      • 补充(2)
    • 进阶

  • git

  • 数据结构与算法

  • axure

  • english

  • docker

  • IT_Need
  • mysql
  • 基础
DC
2023-04-24
目录

db_command

* / % binary greatest() least() ASCII() replace() week() yearweek() date_add() date_format()
mysql版本:select version();
当前登录用户:select user();
当前日期'年-月-日 时-分-秒':select now();
'年-月-日': select curdate();
'时-分-秒': select curtime();

system clear;

sql不区分大小写!

create      insert      ;     drop      delete      ;      alter      update      ;      show      select


# 数据库

创建:create database [if not exists] database_name default charset utf8 collate utf8_general_ci;
删除库:drop database database_name;
修改: alter database database_name charset latin1;
查看:show databases;
     查看指定数据库的创建信息:show create database database_name;
     返回当前使用的数据库的名称'可以设置列别名': select database() [as 'column_name'];

连接:mysql -uroot -p
退出:exit
使用:use database_name;


# 数据表

创建:
     create table [if not exists] table_name (
             列名 类型 约束,
             [列名 类型 约束]
     )default charset=utf8mb4; 删除表:drop table [if exists] table_name;
修改:alter table table_name add|modify|change|rename to|drop;
        添加字段:alter table 表名 add 列名 类型 约束 [after|frist table_field];
        删除字段:alter table 表名 drop column 列名;
        修改字段类型:alter table table_name modify column 列名 类型;
        修改字段类型 + 名称: alter table 表名 change 原列名 新列名 新类型;
        默认值:
                修改字段默认值 alter table 表名 alter 列名 set default 1000;
                删除字段默认值 alter table 表名 alter 列名 drop default ;
        表名:
                alter table 旧表名 rename 新表名;
                rename table 旧表名 to 新表名;
        修改存储引擎:
                alter table table_name engine=innodb;
查看:
        哪些表: show tables;
        表结构:desc table_name [字段名]; -- 可以只看其中某一字段的结构
        创建表结构的sql语句: show create table table_name[\G]; -- 表名加\G查看表详细信息

复制表:
create table t6 select * from t5; -- 表结构和数据
create table t6 select * from t5 where 1<0; -- 表结构 空表
克隆表:like|as


# 表记录

增加:insert into table_name values|set ... 共有四种方式(全列|指定列|多行批量|使用set子句)
        多行批量: 若不指定列则所有列的字段值都要一一对应赋值.
                insert into table_name[(字段名,字段名...)] values (字段值,字段值...),(字段值,字段值...);
        使用set子句: 可以不按照列顺序插入数据,对允许空值的列可以不插入.
                insert into table_name set 第2列字段值='',第4列字段值='';
        插入查询结果: 创建一个B表,将A表中的所有数据插入到B表中
insert into B select * from A;
删除记录:delete from table_name where 条件;
修改:update table_name set 字段1=值1[,字段2=值2,...] [where条件];
        replace into table_name values (字段值,字段值,字段值...);
        <举栗>
update tb1 set age=age+1 where id=2; -- 整型 age在原有基础上加1
update L3 set name=concat(name,"123") where id=2; -- concat一个函数,可以拼接字符串

查看:!!!!

清空表:
        delete from table_name;
        一条一条的删除记录 若有自增id,新增的数据id以删除前的最后一个id值的下一个作为起始值.
        truncate table_name;
        直接清空表 适用于数据量大,速度快,无法回滚,且新id从零开始.


ps: 若在windows系统中,插入中文字符,select的结果为空白,可以将所有字符编码统一设置成gbk!

install_db
imp_knowledge

← install_db imp_knowledge→

最近更新
01
deepseek本地部署+知识库
02-17
02
实操-微信小程序
02-14
03
教学-cursor深度探讨
02-13
更多文章>
Theme by Vdoing | Copyright © 2023-2025 DC | One Piece
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式