数据库~大叔通过脚本升级实体

Posted 敢于对过去告一个段落,才有信心掀开新的篇章!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库~大叔通过脚本升级实体相关的知识,希望对你有一定的参考价值。

今天在做开发时,需要把表映射成实体,又没有EF这种工具,就从网上下了一个工具,但使用时觉得太重了,所以就自己写了一个,基于mysql的。

功能:输入表名,得到这个表的poco实体

SELECT
    COLUMN_TYPE,
    CONCAT(
        \'public \',
        CASE
    WHEN LEFT (COLUMN_TYPE, 3) = \'int\' THEN
        \'int\'
    WHEN LEFT (COLUMN_TYPE, 7) = \'tinyint\' THEN
        \'byte\'
    WHEN LEFT (COLUMN_TYPE, 8) = \'smallint\' THEN
        \'short\'
    WHEN LEFT (COLUMN_TYPE, 6) = \'bigint\' THEN
        \'long\'
    WHEN LEFT (COLUMN_TYPE, 5) = \'float\' THEN
        \'float\'
    WHEN LEFT (COLUMN_TYPE, 5) = \'double\' THEN
        \'double\'
    WHEN LEFT (COLUMN_TYPE, 7) = \'decimal\' THEN
        \'decimal\'
    WHEN LEFT (COLUMN_TYPE, 4) = \'char\' THEN
        \'string\'
    WHEN LEFT (COLUMN_TYPE, 7) = \'varchar\' THEN
        \'string\'
    WHEN LEFT (COLUMN_TYPE, 4) = \'text\' THEN
        \'string\'
    WHEN LEFT (COLUMN_TYPE, 8) = \'datetime\' THEN
        \'DateTime\'
    WHEN LEFT (COLUMN_TYPE, 4) = \'time\' THEN
        \'DateTime\'
    WHEN LEFT (COLUMN_TYPE, 4) = \'date\' THEN
        \'DateTime\'
    ELSE
        COLUMN_TYPE
    END,
    \' \',
    COLUMN_NAME,
    \'{get;set;}\'
    )
FROM
    information_schema. COLUMNS
WHERE
    table_name = \'business_datelist\'
AND table_schema = \'pilipadb\';

产生的结果

我们可以直接把第二列复制到VS的实体里就可以了,还是挺方便的!

 

以上是关于数据库~大叔通过脚本升级实体的主要内容,如果未能解决你的问题,请参考以下文章

中年大叔学编程-初步了解一下Lua脚本

大叔最新课程~EF核心技术剖析

通过脚本(awk,grep)清洗实体类数据,存入数据库

通过脚本(awk,grep)清洗实体类数据,存入数据库

使用实体框架迁移时 SQL Server 连接抛出异常 - 添加代码片段

通过脚本片段绕过XSS防御