(2.7)Mysql之SQL基础——表的操作与查看
(2.7)Mysql之SQL基础——表的操作与查看
搜索关键字:mysql表操作,comment注释操作,mysql临时表
【一】innodb下的表操作
0、临时表 create temporary table
1、创建表(在innodb下)
1.1、create table table_name(column type) ENGINE=innodb default CHARSET=UTF8 COLLATE=utf8_general_ci COMMENT='this is a test~'; --常规默认方式 create table table_name(column type) 选项
1.2、create table table_name like old_table_name; --like:包括旧表的 表结构+索引 (不含数据信息)
1.3、create table table_name as select * from old_table_name; --create table as select :包括旧表的 表结构+表数据 (不含索引信息),as 可以省略
2、查询表(show tables;)(必须切换到数据库)
2.1、show tables;
2.2、show tables from db_name;
2.3、show tables like '%table_name%';
3、切换数据库(use)
3.1 、use db_name;
4、查看表结构与表定义(desc/show)
4.1 查看表结构:desc table_name; or desc db_name.table_name;
4.2 查看表定义:show create table table_name; or show create table db_name.table_name;
4.3 查看列定义:SHOW FULL COLUMNS FROM tbl_name;
5、删除表(drop)
5.1 drop table test101;
5.2 drop table test101,test102;
6、重命名表(rename)
6.1 rename table test101 to test1011;
6.2 rename table test101 to test1011,test102 to test1022;
7、截断表数据
7.1 删除表中所有数据 truncate:truncate table table_name;
8、插入表数据
8.1 单条插入insert into values:insert into tab_name(column_1,column_2……) value(val1,val2……)
8.2 单条插入insert into set:INSERT INTO products SET column1=val1,column2=val2 --只能单条插入
8.3 多条插入insert into select:insert into table_name(column_1.......) value select val1.....from tab2_name
8.4 多条插入insert into values(),():insert into tab_name(column_1,column_2……) value(val1,val2……),(val11,val12……)
9、更新表数据
9.1 单表更新update table_name set column1=value1,column2=value2....
9.2 多表关联更新/多表更新 update table_1 t1 join table_2 t2 on t1.id=t2.id set t1.column1=value1,t2.column1=value2
10、删除表数据
10.1 单表删除delete from table_name or delete t1 from table_name t1
10.2 多表关联删除delete t1 from table_1 t1 join table_2 t2 on t1.id = t2.id where t1.id=1
11、列操作(add/drop/modify/change)
alter table table_name add/drop/modify/change
11.1 添加一个列 add: 【1】alter table test101 add n1 varchar(20); 【2】alter table test101 add(n1 varchar(20),n2 varchar(30));
11.2 删除一个列 drop :【1】 alter table test101 drop n1;
11.3 重命名列 change:【1】alter table test101 change n1 n11 varchar(20); 【2】alter table test101 change n1 n1 varchar(50);
11.4 修改列属性 modify:【1】修改列字段类型:alter table test101 modify n1 varchar(100); 【2】修改字符集:alter table test101 character set utf8;
【3】增加一列放到第一列去:alter table table_name ADD column_name CHAR(11) FIRST;
【4】增加一列放到某一列后面去:alter table table_name ADD column_name CHAR(11) AFTER column1;
-- 查看表的 comment
SELECT table_name, table_comment
FROM information_schema.tables
WHERE table_schema = 'schema_name' AND table_name = 'table_name'; -- 查看表中 columns 的 comment
SELECT column_name, column_comment
FROM information_schema.columns
WHERE table_schema = 'schema_name' AND table_name = 'table_name';
---------------------
(2.7)Mysql之SQL基础——表的操作与查看的更多相关文章
- (2.16)Mysql之SQL基础——函数
(2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...
- (2.15)Mysql之SQL基础——开发设计最佳规范
(2.15)Mysql之SQL基础——开发设计最佳规范 关键字:mysql三大范式,mysql sql开发规范 分析: show profile.mysqllsla.mysqldrmpslow.exp ...
- (2.13)Mysql之SQL基础——触发器
(2.13)Mysql之SQL基础——触发器 关键词:Mysql触发器 1.一般形式 -- 0.查看触发器[1]SHOW TRIGGERS;[2]SELECT * FROM `information_ ...
- (2.11)Mysql之SQL基础——存储过程与变量
(2.11)Mysql之SQL基础——存储过程 关键字:mysql存储过程 查看存储过程: []SELECT * FROM information_schema.ROUTINES WHERE ROUT ...
- (2.10)Mysql之SQL基础——约束及主键重复处理
(2.10)Mysql之SQL基础——约束及主键重复处理 关键词:mysql约束,批量插入数据主键冲突 [1]查看索引: show index from table_name; [2]查看有约束的列: ...
- (2.9)Mysql之SQL基础——索引的查看与删除
(2.9)Mysql之SQL基础——索引的查看与删除 关键词:mysql索引查看,mysql索引删除 1.索引查询(以下包括主键,唯一,普通,复合,全文,但不包括外键) (1)按库查询 select ...
- (2.8)Mysql之SQL基础——索引的分类与使用
(2.8)Mysql之SQL基础——索引的分类与使用 关键字:mysql索引,mysql增加索引,mysql修改索引,mysql删除索引 按逻辑分类: 1.主键索引(聚集索引)(也是唯一索引,不允许有 ...
- (2.6)Mysql之SQL基础——存储引擎的查看与修改
(2.6)Mysql之SQL基础——存储引擎的查看与修改 可以使用 show engines; 查看数据库支持的所有的存储引擎: 目录: 1.数据库级别存储引擎 1.1查看现在默认的存储引擎 1.2 ...
- MySQL用sql复制表数据到新表的方法
用sqlyog无法直接复制出一个不同表名的表来,只能copy到其他库上同名的表. 在MySQL数据库中,应该如何用sql将表数据复制到新表中呢? 本人通过试验测试成功了,而且相当简单易懂,速度也非常快 ...
随机推荐
- adb not responding的解决方案
查看谁占用了进程:netstat -aon|findstr "5037" 终止占用的进程: 假若"6908"占用了进程 taskkill /pid 6908 / ...
- C语言错误 指针的类型错误
//指针的类型错误 #include<stdio.h> #include<stdlib.h> #include<string.h> //用const来限制形参的指向 ...
- ubuntu vnc安装
VNC(Virtual Network Computing),为一种使用RFB协议的屏幕画面分享及远程操作软件.此软件借由网络,可发送键盘与鼠标的动作及即时的屏幕画面. 1. 安装vnc服务器 sud ...
- Mybatis实现了接口绑定,使用更加方便。
1.Mybatis实现了接口绑定,使用更加方便. 在ibatis2.x中我们需要在DAO的实现类中指定具体对应哪个xml映射文件, 而Mybatis实现了DAO接口与xml映射文件的绑定,自动为我们生 ...
- php -- 魔术方法 之 调用方法:__call()、__callStatic()
方法重载:当调用一个不存在或者权限不够的方法的时候,会自动调用__call()方法 public function __call($name,$args){} :用对象调用方法 public sta ...
- MD5的各种实现——也是醉了
MD5即Message-Digest Algorithm 5(信息-摘要算法5).用于确保信息传输完整一致. 是计算机广泛使用的杂凑算法之中的一个(又译摘要算法.哈希算法),主流编程语言普遍已有MD5 ...
- MathType中如何快速输入空心字母
MathType输入数学公式时非常方便有效的,在文档中涉及到数学公式或者符号时都是使用MathType来进行的,因为它比Office自带的公式编辑器功能更为完善,使用起来更快捷.在数学公式中,在不同的 ...
- Python爬虫(六)
源码: import requests import re from my_mysql import MysqlConnect # 获取问答信息 def get_contents(page,heade ...
- Java之线程池
假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间.当T1 + T3 远大于 T2时,采用多线程技术可以显著减少处理器单元的闲置时间,增加处理器 ...
- jquery做简单特效
1.点击触发消失效果 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> &l ...