MYSQL8-快速生成表结构(用于生成文档):
`SELECT
@rownum:=@rownum+1 AS 序号,
column_name AS 代码,
CASE WHEN column_comment IS NULL OR TRIM(column_comment)='' THEN column_name
ELSE
CASE WHEN INSTR(column_comment,'-')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,'-')-1)
WHEN INSTR(column_comment,'(')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,'(')-1)
WHEN INSTR(column_comment,'(')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,'(')-1)
WHEN INSTR(column_comment,';')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,';')-1)
WHEN INSTR(column_comment,'|')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,'|')-1)
WHEN INSTR(column_comment,' ')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,' ')-1)
WHEN INSTR(column_comment,',')>0 THEN SUBSTR(column_comment,1,INSTR(column_comment,',')-1)
ELSE column_comment
END
END AS 名称,
column_type 字段类型,
CASE WHEN CHARACTER_MAXIMUM_LENGTH is null then '' else CHARACTER_MAXIMUM_LENGTH end as 长度
,
CASE WHEN column_key = 'PRI' then '是' else '' end as 是否主键,
'否' 是否外键,
CASE WHEN is_nullable = 'NO' then '否' else '是' end as 是否为空,
CASE WHEN column_comment is null then '' else column_comment end as 注释
FROM information_schema.columns,(SELECT @rownum:=0) r
WHERE table_name='camera_information' and table_schema = 'zhuhai_electricity_data'
ORDER BY ordinal_position`