sqlserver数据库表生成C#代码实体类型方法

declare @TableName sysname = ‘T_CRM_Customer‘
declare @Result varchar(max) = ‘
/// <summary>
/// ‘ + @TableName +


/// </summary>
public class ‘ + @TableName + ‘
{‘

select @Result = @Result + ‘
/// <summary>
/// ‘ + CONVERT(NVARCHAR(500), ISNULL(ColName, ‘无‘)) +


/// </summary>
public ‘ + ColumnType + NullableSign + ‘ ‘ + ColumnName + ‘ { get; set; }

from
(
SELECT
replace(col.name, ‘ ‘, ‘_‘) ColumnName,
column_id ColumnId,
prop.value ColName,
case typ.name
when ‘bigint‘ then ‘long‘
when ‘binary‘ then ‘byte[]‘
when ‘bit‘ then ‘bool‘
when ‘char‘ then ‘string‘
when ‘date‘ then ‘DateTime‘
when ‘datetime‘ then ‘DateTime‘
when ‘datetime2‘ then ‘DateTime‘
when ‘datetimeoffset‘ then ‘DateTimeOffset‘
when ‘decimal‘ then ‘decimal‘
when ‘float‘ then ‘float‘
when ‘image‘ then ‘byte[]‘
when ‘int‘ then ‘int‘
when ‘money‘ then ‘decimal‘
when ‘nchar‘ then ‘char‘
when ‘ntext‘ then ‘string‘
when ‘numeric‘ then ‘decimal‘
when ‘nvarchar‘ then ‘string‘
when ‘real‘ then ‘double‘
when ‘smalldatetime‘ then ‘DateTime‘
when ‘smallint‘ then ‘short‘
when ‘smallmoney‘ then ‘decimal‘
when ‘text‘ then ‘string‘
when ‘time‘ then ‘TimeSpan‘
when ‘timestamp‘ then ‘DateTime‘
when ‘tinyint‘ then ‘byte‘
when ‘uniqueidentifier‘ then ‘Guid‘
when ‘varbinary‘ then ‘byte[]‘
when ‘varchar‘ then ‘string‘
else ‘UNKNOWN_‘ + typ.name
end ColumnType,
case
when col.is_nullable = 1 and typ.name in (‘bigint‘, ‘bit‘, ‘date‘, ‘datetime‘, ‘datetime2‘, ‘datetimeoffset‘, ‘decimal‘, ‘float‘, ‘int‘, ‘money‘, ‘numeric‘, ‘real‘, ‘smalldatetime‘, ‘smallint‘, ‘smallmoney‘, ‘time‘, ‘tinyint‘, ‘uniqueidentifier‘)
then ‘?‘
else ‘‘
end NullableSign
from sys.columns col
join sys.types typ on
col.system_type_id = typ.system_type_id AND col.user_type_id = typ.user_type_id
LEFT JOIN sys.extended_properties prop ON col.object_id = prop.major_id AND col.column_id = prop.minor_id
where object_id = object_id(@TableName)
) t
--order by ColumnId

set @Result = @Result + ‘
}‘

print @Result

原文地址:https://www.cnblogs.com/zoumm/p/12000150.html

时间: 2024-10-07 20:20:57

sqlserver数据库表生成C#代码实体类型方法的相关文章

nutz,今晚来一发(18): nutz有数据库表生成bean的工具或方法不?

--------------------------很长很长的分割线------------------ 与quartz的集成, 就是JobFactory的替换,以实现Job类的ioc注入. 直接用类: https://github.com/nutzam/nutzmore/blob/master/src/org/nutz/integration/quartz/NutQuartzJobFactory.java 第二种, 在Setup接口实现类的init方法中, 通过NutConfig实例获取ioc

symfony 数据库表生成实体、迁移

从数据库表生成实体 1. 由数据库生成模型: php bin/console doctrine:mapping:convert --from-database yml D:\db\ (模型要改第一行路径) 2.实例所有表结构 php bin/console doctrine:generate:entities AppBundle/Entity/ --path src/ 实例单个表结构(SiteChannel) php bin/console doctrine:generate:entities

自动生成对应数据库表的JPA代码工具

http://blog.csdn.net/zheng2008hua/article/details/6274659 关键词:JPA 数据库表代码自动生成,JPA代码生成 自动生成对应数据库表的JPA代码工具: 1.myEclipse 使用MyEclipse Persistence Tools; 2.eclipse 创建一个JPA Project工程后,右键工程选JPA Tools选项生成,有用到Data Source Explorer,参考http://blog.csdn.net/zheng20

django根据已有数据库表生成model类

django根据已有数据库表生成model类 创建一个Django项目 django-admin startproject 'xxxx' 修改setting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'sqlexam', 'USER': 'root', 'PASSWORD': 'root123456'

Django-根据数据库表生成 model 类

根据数据库表生成 model 类 创建一个Django项目 django-admin startproject 'xxxx' 修改setting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'sqlexam', 'USER': 'root', 'PASSWORD': 'root123456', 'HOS

解决SQLSERVER数据库表被琐死!

--杀死全部锁死进程ALTER Proc Sp_KillAllProcessInDB@DbName VarChar(100)asif db_id(@DbName) = NullbeginPrint 'DataBase dose not Exist'endelse BeginDeclare @spId Varchar(30) DECLARE TmpCursor CURSOR FORSelect 'Kill ' + convert(Varchar, spid) as spIdfrom master.

java工具类–自动将数据库表生成javabean

最近和数据库的表打交道挺多的,因为暂时做的是接口活. 在这过程中发现要把表转换成对应的javabean类型,字段少的表还行,如果不小心碰到几十个字段的他妈的写起来就有点麻烦了,万一碰到几百个的呢,那不是要崩溃. 于是想写个工具类,自动生成javabean. 先说下思路: 1.读取数据库表,获取里面的字段名. 准备连接数据库的驱动包,这里只是针对了oracle数据库和mysql数据库 2.构建一个stringBuffer字符串,用来生成我们需要的类. 3.写入文件 要求具备相应的文件流知识. 好了

利用HibernateTools从数据库表生成带注解的POJO

引用:http://www.cnblogs.com/mingziday/p/4475124.html 在SSH框架中,如果先设计好了数据库,那么下一步就需要从数据库Table生成实体java类和hbm.xml配置文件.在最新的开发框架中,已经支持使用注解,从而避免了繁琐的hbm.xml配置,而且我们可以借助HibernateTools工具完成从Table到实体Java类的转换. 1.首先把HibernateTools插件安装到Eclipse上 打开Eclispe,按照如下操作完成插件安装 Hel

SQLServer数据库表架构和数据保存成sql文件

一.先在你的mssql数据库中点击“数据库–>任务–>生成脚本” 二.然后我们会看到有“生成和发布脚本”窗口 下一步 三.选择要编写脚本的数据库对象,全部导出选第一个,如果你想导出部分数据勾选    第二个 四.然后在出现的”高级”按钮 五.最后对要 ”要编写脚本的数据的类型”对应:”架构和数据” 就导出成功了.