(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基础——表的操作与查看的更多相关文章

  1. (2.16)Mysql之SQL基础——函数

    (2.16)Mysql之SQL基础——函数 关键词:mysql函数,mysql自定义函数,mysql聚合函数,mysql字符串函数,mysql数值函数 1.自定义函数 -- (1)一般形式 creat ...

  2. (2.15)Mysql之SQL基础——开发设计最佳规范

    (2.15)Mysql之SQL基础——开发设计最佳规范 关键字:mysql三大范式,mysql sql开发规范 分析: show profile.mysqllsla.mysqldrmpslow.exp ...

  3. (2.13)Mysql之SQL基础——触发器

    (2.13)Mysql之SQL基础——触发器 关键词:Mysql触发器 1.一般形式 -- 0.查看触发器[1]SHOW TRIGGERS;[2]SELECT * FROM `information_ ...

  4. (2.11)Mysql之SQL基础——存储过程与变量

    (2.11)Mysql之SQL基础——存储过程 关键字:mysql存储过程 查看存储过程: []SELECT * FROM information_schema.ROUTINES WHERE ROUT ...

  5. (2.10)Mysql之SQL基础——约束及主键重复处理

    (2.10)Mysql之SQL基础——约束及主键重复处理 关键词:mysql约束,批量插入数据主键冲突 [1]查看索引: show index from table_name; [2]查看有约束的列: ...

  6. (2.9)Mysql之SQL基础——索引的查看与删除

    (2.9)Mysql之SQL基础——索引的查看与删除 关键词:mysql索引查看,mysql索引删除 1.索引查询(以下包括主键,唯一,普通,复合,全文,但不包括外键) (1)按库查询 select ...

  7. (2.8)Mysql之SQL基础——索引的分类与使用

    (2.8)Mysql之SQL基础——索引的分类与使用 关键字:mysql索引,mysql增加索引,mysql修改索引,mysql删除索引 按逻辑分类: 1.主键索引(聚集索引)(也是唯一索引,不允许有 ...

  8. (2.6)Mysql之SQL基础——存储引擎的查看与修改

    (2.6)Mysql之SQL基础——存储引擎的查看与修改 可以使用 show engines; 查看数据库支持的所有的存储引擎: 目录: 1.数据库级别存储引擎 1.1查看现在默认的存储引擎 1.2 ...

  9. MySQL用sql复制表数据到新表的方法

    用sqlyog无法直接复制出一个不同表名的表来,只能copy到其他库上同名的表. 在MySQL数据库中,应该如何用sql将表数据复制到新表中呢? 本人通过试验测试成功了,而且相当简单易懂,速度也非常快 ...

随机推荐

  1. time函数

    time函数 time #include<time.h> time_t time(time_t *t); typdef long int time_t; time() returns th ...

  2. Nginx配置proxy_pass转发的/路径

    请求原地址 :http://servername/static_js/test.html location ^~ /static_js/ { proxy_cache js_cache; proxy_s ...

  3. node.js之web开发 koa入门

    用Node.js开发Web服务器端,有几个显著的优势: 速度快,非常快!这得益于Node.js天生是异步的. 常见的Web框架包括:Express,Sails.js,koa,Meteor,DerbyJ ...

  4. 关于Unity中调试C#的方法

    1.断点输出语句 在感觉有问题的地方的上下文写一些输出语句,如果控制台只有输出上文,没有输出下文,那么可以知道,上下文之间的语句有问题,因为下文没执行到,没有输出语句. Debug.Log(" ...

  5. 【BZOJ】1645: [Usaco2007 Open]City Horizon 城市地平线(线段树+特殊的技巧)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1645 这题的方法很奇妙啊...一开始我打了一个“离散”后的线段树.............果然爆了. ...

  6. MFC存储图片到SQL Server数据库

    第一步:建立数据库表,比如:id char,pic image. 第二步:建立MFC单文档应用程序,再添加类CMyRecordset,基类选择CRecordset,导入数据库的刚建立的表. 第三步:在 ...

  7. 数据库存入数据后id保持不变,或者直接报错

    数据库存入数据后id保持不变,且添加的数据一直在进行覆盖 或者直接报错 数据库存入数据后id保持不变,且添加的数据一直在进行覆盖 原因是: 之前注释掉了loadimage();在该函数中含有建立新的记 ...

  8. VC++中CEdit控件实现回车换行

    1.通过回车Enter换行: 这里要有两个设置 <1>.将控件的属性设置为Mutilines->true; <2>.将控件的另一个属性设置为Want return-> ...

  9. HDU4081 Qin Shi Huang&#39;s National Road System【prim最小生成树+枚举】

    先求出最小生成树,然后枚举树上的边,对于每条边"分别"找出这条割边形成的两个块中点权最大的两个 1.因为结果是A/B.A的变化会引起B的变化,两个制约.无法直接贪心出最大的A/B. ...

  10. UE打包32位程序遇到Win32 is not a supported platform for MindWaveEditor. Valid platforms are Win64.

    1>------ 已启动全部重新生成: 项目: MindWave, 配置: Development_Editor Win32 ------1> Win32 is not a support ...