获取My SQL表结构信息

SELECT DISTINCT
	Column_Name AS ColumnName,
	'表名' AS tableName,
	Column_Comment AS ColumnCnName,
CASE
	
	WHEN data_type IN ( 'BIT', 'BOOL', 'bit', 'bool' ) THEN
	'bool' 
	WHEN data_type IN ( 'smallint', 'SMALLINT' ) THEN
	'short' 
	WHEN data_type IN ( 'tinyint', 'TINYINT' ) THEN
	'sbyte' 
	WHEN data_type IN ( 'MEDIUMINT', 'mediumint', 'int', 'INT', 'year', 'Year' ) THEN
	'int' 
	WHEN data_type IN ( 'BIGINT', 'bigint' ) THEN
	'bigint' 
	WHEN data_type IN ( 'FLOAT', 'DOUBLE', 'DECIMAL', 'float', 'double', 'decimal' ) THEN
	'decimal' 
	WHEN data_type IN (
		'CHAR',
		'VARCHAR',
		'TINY TEXT',
		'TEXT',
		'MEDIUMTEXT',
		'LONGTEXT',
		'TINYBLOB',
		'BLOB',
		'MEDIUMBLOB',
		'LONGBLOB',
		'Time',
		'char',
		'varchar',
		'tiny text',
		'text',
		'mediumtext',
		'longtext',
		'tinyblob',
		'blob',
		'mediumblob',
		'longblob',
		'time' 
		) THEN
		'string' 
		WHEN data_type IN ( 'Date', 'DateTime', 'TimeStamp', 'date', 'datetime', 'timestamp' ) THEN
		'DateTime' ELSE 'string' 
	END AS ColumnType,
CASE
		
		WHEN CHARACTER_MAXIMUM_LENGTH > 8000 THEN
		0 ELSE CHARACTER_MAXIMUM_LENGTH 
	END AS Maxlength,
CASE
		
		WHEN COLUMN_KEY <> '' THEN
		1 ELSE 0 
	END AS IsKey,
CASE
		
		WHEN Column_Name IN ( 'CreateID', 'ModifyID', '' ) 
		OR COLUMN_KEY <> '' THEN
			0 ELSE 1 
		END AS IsDisplay,
		1 AS IsColumnData,
		120 AS ColumnWidth,
		0 AS OrderNo,
	CASE
			
			WHEN IS_NULLABLE = 'NO' THEN
			0 ELSE 1 
		END AS IsNull,
	CASE
			
			WHEN COLUMN_KEY <> '' THEN
			1 ELSE 0 
		END AS IsReadDataset,
		ordinal_position 
	FROM
		information_schema.COLUMNS 
ORDER BY
ordinal_position
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值