用select语句来代替show create table
来源:互联网 发布:java ...参数 编辑:程序博客网 时间:2024/06/15 02:20
用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_SCHEMAFROM information_schema.COLUMNS WHERE TABLE_SCHEMA=@db_name AND TABLE_NAME=@table_name;
话说这个改改貌似可以用来注入了。。
不过这个还是有局限性的,group_concat长度一般默认为1024,所以对于结构太复杂的表可能会发生截断,显示不完整。
0 0
- 用select语句来代替show create table
- 利用select语句进行create table
- create table:使用SELECT语句创建表
- MySQL show create table
- SHOW CREATE TABLE table_name
- show create table ‘tablename’
- Create table as select
- create table as select
- hive 表注释乱码以及show create table语句描述乱码解决
- MySQL Create Table语句
- SQL CREATE TABLE 语句
- CREATE TABLE 语句
- SQL CREATE TABLE 语句
- SQL CREATE TABLE 语句
- SQL CREATE TABLE 语句
- SQL CREATE TABLE 语句
- SQL语句CREATE TABLE
- CREATE TABLE 语句
- 通过rul删除solr索引
- Android——实现全国省市区地区选择
- Linux查看文件命令
- 同步互斥,信号量,互斥量,事件,临界区
- MVC 表单提交多个实体 (带嵌套子集)
- 用select语句来代替show create table
- UVA 410 贪心
- 嘉扬WorkShop软件学习笔记
- iOS-防止GDB挂起(就这么简单)
- 【华为 OJ】 放苹果
- 2016_08_04
- 随笔 新手的git命令操作
- 1114. Family Property (25)
- maven删除未下载完的jar包 脚本