使用mysql查询生产c#实体
2022-10-14 15:56 Lecone.JY.HU 阅读(17) 评论(0) 编辑 收藏 举报SELECT CONCAT(' /// <summary> /// ',column_comment,' /// </summary> '), CASE WHEN COLUMN_NAME='RecordId' THEN CONCAT('public string ',COLUMN_NAME,'{ get; set; } = Guid.NewGuid().ToString("N");') WHEN DATA_TYPE LIKE '%char%' OR DATA_TYPE LIKE '%text%' THEN CONCAT('[MaxLength(',CHARACTER_MAXIMUM_LENGTH,')]\r\n' 'public string ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'int' and IS_NULLABLE='NO' THEN CONCAT('public int ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'int' and IS_NULLABLE='YES' THEN CONCAT('public int? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'bigint' and IS_NULLABLE='NO' THEN CONCAT('public long ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'bigint' and IS_NULLABLE='YES' THEN CONCAT('public long? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'smallint' and IS_NULLABLE='NO' THEN CONCAT('public int ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE 'smallint' and IS_NULLABLE='YES' THEN CONCAT('public int? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%bit%' and IS_NULLABLE='NO' THEN CONCAT('public bool ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%bit%' and IS_NULLABLE='YES' THEN CONCAT('public bool? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%float%' and IS_NULLABLE='NO' THEN CONCAT('public decimal ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%float%' and IS_NULLABLE='YES' THEN CONCAT('public decimal? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%decimal%' and IS_NULLABLE='NO' THEN CONCAT('public decimal ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%decimal%' and IS_NULLABLE='YES' THEN CONCAT('public decimal? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%date%' and IS_NULLABLE='NO' THEN CONCAT('public DateTime ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%date%' and IS_NULLABLE='YES' THEN CONCAT('public DateTime? ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%timestamp%' and IS_NULLABLE='NO' THEN CONCAT('public DateTime ',COLUMN_NAME,'{ get; set; }') WHEN DATA_TYPE LIKE '%timestamp%' and IS_NULLABLE='YES' THEN CONCAT('public DateTime? ',COLUMN_NAME,'{ get; set; }') ELSE COLUMN_NAME END FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = 'dbname' -- 数据库名称 AND table_name = 'tbname' -- 表名 ORDER BY ordinal_position;