first commit
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
DELIMITER //
|
||||
|
||||
CREATE OR REPLACE PROCEDURE zen_read_schema (
|
||||
IN p_tablename VARCHAR(100)
|
||||
)
|
||||
/*
|
||||
功能:讀取資料表結構資訊
|
||||
範例:CALL zen_read_schema('pmsproject_class');
|
||||
*/
|
||||
BEGIN
|
||||
SELECT
|
||||
t.TABLE_NAME AS '表格名稱',
|
||||
c.COLUMN_NAME AS '欄位名稱',
|
||||
c.ORDINAL_POSITION AS '序號',
|
||||
c.DATA_TYPE AS '資料型別',
|
||||
IFNULL(c.CHARACTER_MAXIMUM_LENGTH, '') AS '長度',
|
||||
'' AS '預設值',
|
||||
CASE WHEN c.IS_NULLABLE = 'YES' THEN 'N' ELSE 'Y' END AS '是否允許空值',
|
||||
IFNULL(
|
||||
(SELECT COLUMN_COMMENT
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_SCHEMA = t.TABLE_SCHEMA
|
||||
AND TABLE_NAME = t.TABLE_NAME
|
||||
AND COLUMN_NAME = c.COLUMN_NAME),
|
||||
''
|
||||
) AS '欄位描述'
|
||||
FROM
|
||||
INFORMATION_SCHEMA.TABLES t
|
||||
LEFT JOIN INFORMATION_SCHEMA.COLUMNS c ON t.TABLE_NAME = c.TABLE_NAME AND t.TABLE_SCHEMA = c.TABLE_SCHEMA
|
||||
WHERE
|
||||
t.TABLE_TYPE = 'BASE TABLE'
|
||||
AND t.TABLE_NAME = p_tablename
|
||||
ORDER BY
|
||||
t.TABLE_NAME,
|
||||
c.ORDINAL_POSITION;
|
||||
END//
|
||||
|
||||
DELIMITER ;
|
||||
Reference in New Issue
Block a user