用select语句来代替show create table来简单显示表结构,此语句不包含创建表索引语句。

select语句查询表结构:

SET @db_name='aa';
SET @table_name='bb';
SELECT TABLE_NAME,
CONCAT('CREATE TABLE ','`',TABLE_NAME,'` (',GROUP_CONCAT(
"\r\n",
CONCAT(CONCAT('`',COLUMN_NAME,'`'),
' ',
COLUMN_TYPE,
' ',
IF(IS_NULLABLE='NO','NOT NULL',''),IF(COLUMN_TYPE='text','',IF(COLUMN_DEFAULT IS NULL AND IS_NULLABLE='NO','',CONCAT(' DEFAULT ',IF(COLUMN_DEFAULT IS NULL,'NULL',CONCAT('\'',COLUMN_DEFAULT,'\'')))))),
IF(EXTRA='','',' auto_increment')
),
CONCAT(",\r\n",'PRIMARY KEY (`',(SELECT COLUMN_NAME FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@db_name AND TABLE_NAME=@table_name AND COLUMN_KEY='PRI'),'`)',"\r\n",')'),
(SELECT CONCAT(' ENGINE=',ENGINE,' DEFAULT CHARSET=',SUBSTRING(TABLE_COLLATION,1,LOCATE('_',TABLE_COLLATION)-1)) FROM information_schema.TABLES WHERE TABLE_SCHEMA=@db_name AND TABLE_NAME=@table_name)
) AS TABLE_SCHEMA
FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@db_name AND TABLE_NAME=@table_name;

话说这个改改貌似可以用来注入了。。

不过这个还是有局限性的,group_concat长度一般默认为1024,所以对于结构太复杂的表可能会发生截断,显示不完整。

用select语句来代替show create table相关推荐

  1. ireport修改jrxml中的sql语句_SQL中的create table与insert into语句

    学习交流,欢迎留言~~ 今天学习SQL的时候遇到了个小疑问,创建数据表肯定是用create table语句的,但是为什么后面总是跟随着insert into呢? 身为一个不弄白不舒服斯基,走起~~~ ...

  2. oracle数据库【表复制】insert into select from跟create table as select * from 两种表复制语句区别...

    create table  as select * from和insert into select from两种表复制语句区别 create table targer_table as select ...

  3. MySQL 对 CREATE TABLE IF NOT EXISTS SELECT 的处理

    MySQL 支持创建数据表时判断是否存在,存在则不创建,不存在则创建,相应语句如下: --格式 CREATE TABLE IF NOT EXISTS [Table Definition];--示例 C ...

  4. mysql create table select from_mysql create table select复制表结构和数据实例讲解

    比如现在有一张表,我们要将该表复制一份,以备以后使用,那么如何使用mysql语句来实现呢?其实我们可以直接使用create ... select ... from语句来实现,具体实现方法请看下面实例. ...

  5. create table as select性能测试

    转载自:http://blog.csdn.net/yangzhijun_cau/article/details/7396088 ------------------------------------ ...

  6. 8.2.2 使用SHOW CREATE TABLE语句查看表结构

    8.2.2 使用SHOW CREATE TABLE语句查看表结构 MySQL支持使用SHOW CREATE TABLE语句查看数据表的建表语句.通过SHOW CREATE TABLE语句,不仅可以查看 ...

  7. mysql附录建表_用CREATE TABLE 语句创建数据表

    用CREATE TABLE 语句创建数据表 用 CREATE TABLE 语句创建表.此语句的完整语法是相当复杂的,因为存在那么多的可选子句,但在实际中此语句的应用相当简单.如我们在第 1 章中使用的 ...

  8. mysql中新建数据库create table的COLLATE是什么?

    在mysql中执行show create table <tablename>指令,可以看到一张表的建表语句,example如下: CREATE TABLE `table1` (`id` b ...

  9. Hive建表语句详解--CREATE TABLE

    创建表的三种方法 Hive创建表的方式(默认路径/user/hive/warehouse,也可以location指定,主要针对external表) 1.使用create命令创建一个新表,带分区 CRE ...

最新文章

  1. OpenGL 有时候纹理映射的部分问题
  2. HttpSession
  3. SAP UI5 初学者教程之十一 :SAP UI5 容器类控件 Page 和 Panel 试读版
  4. js遍历Object所有属性
  5. 使用BIND安装智能DNS服务器(一)---基本的主从DNS服务器搭建
  6. mysql 表示时间_MySQL-时间(time、date、datetime、timestamp和year)
  7. 【转】css_重绘重排
  8. Kotlin协程的迷惑
  9. DSP实验二c语言程序,实验1.2:编写一个以C语言为基础的DSP程序
  10. 用 java编写 金字塔_用Java打印金字塔
  11. windows开启远程桌面
  12. 【ubutun22.04】mac修改与吉林大学校园网链接
  13. error:unable to recogni “*.yaml“ze no matcher for kind “Deployment“ in version “extensions/b1beta1“
  14. 183. Customers Who Never Order没有下过订单的顾客MySQL
  15. 《VALORANT》: 双塔迷城的诞生
  16. terracotta安装配置与集群过程
  17. TCP/IP(十一)TCP滑动窗口和拥塞控制
  18. 2017.12.20 静态网页小实战
  19. 试问失恋怎么说 郭乔伊抛单曲《爱情没电了》
  20. Java 将 Excel 转换为 PDF 文件

热门文章

  1. 图片、pdf、wrod和excel 在线预览
  2. 【Java安装】Windows10 Java8下载安装配置
  3. HTML5 CSS3专题 诱人的实例 CSS3打造百度贴吧的3D翻牌效果 以及图片提交
  4. AXI协议(3):AXI架构的握手机制和实现细节
  5. java结合swing多线程实现打字游戏
  6. Error:Artifact 'xx.war exploded' has invalid extension
  7. win7打印机共享怎么设置 图解win7打印机共享设置技巧
  8. 鼠标猫html,游标猫(鼠标特效插件)
  9. 使input文本框不可编辑的方法
  10. 「实在RPA·财务数字员工」加速财务数字化全方位升级!