public bool GetColumn() { var result = false; while (true) { m_sysColumn = null; var sql = string.Format("SELECT {0},{1},{2},{3} FROM information_schema.columns WHERE table_schema='{4}' AND table_name='{5}' ", column_name, data_type, column_type, column_comment, m_schema_table, m_table); sql += string.Format(" and `{0}`='{1}'", column_name, m_column); if (!FindRow(sql)) { break; } m_sysColumn = new sys_column(); m_sysColumn.column_name = m_column; // comment var comment = YoConvert.Text2Json(m_dataRow[column_comment] as string); // format var formatStr = ConfigHelper.GetValue(comment, format); if (formatStr != null) { m_sysColumn.format = formatStr.ToString(); } // datatype m_sysColumn.datatype = YoSqlHelper.GetDataType(m_column, m_dataRow[data_type] as string, comment); switch (m_sysColumn.datatype) { case DataType.Refer: { m_sysColumn.refer = YoSqlHelper.GetReferTable(m_column); } break; case DataType.Set: { var itemArr = YoSqlHelper.GetSetList(m_dataRow[column_type]); m_sysColumn.set = string.Join(",", itemArr); } break; } result = true; break; } return(result); }
public bool GetTable() { var result = false; while (true) { m_sysTable = null; var sql = string.Format("SELECT {0}, {1} FROM information_schema.tables WHERE table_schema='{2}'", table_name, table_comment, m_schema_table); sql += string.Format(" and `{0}`='{1}'", table_name, m_table); if (!FindRow(sql)) { break; } m_sysTable = new sys_table(); m_sysTable.table_name = m_table; // comment var comment = YoConvert.Text2Json(m_dataRow[table_comment] as string); if (comment != null) { // title var title = comment[nameof(m_sysTable.title)]; if (title != null) { m_sysTable.title = title.ToString(); } } // get refer var refer = (new MetaRefer(m_table)).GetReferTables(); m_sysTable.refer = string.Join(",", refer); result = true; break; } return(result); }