<#@ template debug="true" hostspecific="true" language="C#" #> <#@ assembly name="System.Core" #> <#@ assembly name="System.Data" #> <#@ assembly name="System.Xml" #> <#@ assembly name="System.Configuration" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Text" #> <#@ import namespace="System.Collections.Generic" #> <#@ import namespace="System.Data.SqlClient" #> <#@ import namespace="System.Data" #> <#@ output extension=".cs" #> using System;

namespace EIR.Module { <#     //System.Diagnostics.Debugger.Launch();//---进入调试     string nameClass= System.IO.Path.GetFileNameWithoutExtension(this.Host.TemplateFile);     string configPath=Host.ResolveAssemblyReference("$(ProjectDir)")+"app.config";     var configPathMap=new System.Configuration.ExeConfigurationFileMap(){ExeConfigFilename=configPath};     var appConfig=System.Configuration.ConfigurationManager.OpenMappedExeConfiguration(configPathMap, System.Configuration.ConfigurationUserLevel.None);     var connSection= appConfig.GetSection("connectionStrings") as System.Configuration.ConnectionStringsSection;      string cnnstr= connSection.ConnectionStrings["cnnstrMasterMssql"].ConnectionString;     string cmdstrForColDescription=string.Format("with htt as({0}),gmm as ({1}) select htt.name,gmm.value from htt left join gmm on htt.column_id=gmm.minor_id",                              "select * from sys.columns where object_id=OBJECT_ID('"+nameClass+"')",                              "select * from sys.extended_properties where sys.extended_properties.major_id=OBJECT_ID('"+nameClass+"')");     this.WriteLine(string.Format("{1}public class {0}",nameClass,new String(' ',4)));     this.WriteLine(new String(' ',4)+"{");     using (SqlConnection cnn = new SqlConnection(cnnstr))             {                 using (SqlCommand cmd = cnn.CreateCommand())                 {                     cnn.Open();                     cmd.CommandText = "select * from "+nameClass;                     SqlDataReader rr=cmd.ExecuteReader();                     DataTable table = rr.GetSchemaTable();                     rr.Close();                     cmd.CommandText=cmdstrForColDescription;                     using(SqlDataAdapter adapater=new SqlDataAdapter(cmd))                     {                         DataTable tableDesp=new DataTable();                         adapater.Fill(tableDesp);                         foreach (DataRow row in table.Rows)                         {                             string colName = row["ColumnName"].ToString();                             string colType = row["DataType"].ToString().Substring(7);        bool allowDBNull=Convert.ToBoolean(row["AllowDBNull"]);                             if(allowDBNull && !colType.Equals("String"))                                     colType="Nullable<"+colType+">";                             this.WriteLine(string.Format("{3}/// <summary>",colType,colName,"{set;get;}",new String(' ',8)));                             this.WriteLine(string.Format("{3}///{4}",colType,colName,"{set;get;}",new String(' ',8),tableDesp.Select("name='"+colName+"'")[0]["value"].ToString().Replace("\r\n"," ").Replace("\n"," ").Replace("\n"," ")));                             this.WriteLine(string.Format("{3}/// </summary>",colType,colName,"{set;get;}",new String(' ',8)));                             this.WriteLine(string.Format("{3}public {0} {1} {2}",colType,colName,"{set;get;}",new String(' ',8)));                         }                     }                 }             }  #>     } }

sql的列的说明的更多相关文章

  1. SQL Server 列存储索引强化

    SQL Server 列存储索引强化 SQL Server 列存储索引强化 1. 概述 2.背景 2.1 索引存储 2.2 缓存和I/O 2.3 Batch处理方式 3 聚集索引 3.1 提高索引创建 ...

  2. SQL 计算列

    SQL计算列,可以解决一般标量计算(数学计算,如ColumnA*ColumnB)的问题,而子查询计算(如select sum(salary) from tableOther where id=’ABC ...

  3. SQL 一列数据整合为一条数据

    SQL 一列数据整合为一条数据: SELECT  STUFF(( SELECT distinct  ',' + 列名 FROM 表名 where  [条件] FOR XML PATH('') ), 1 ...

  4. jmeter奇淫妙计之遍历sql多列结果集

    foreach控制器加${__V()}函数和${__counter(TRUE,)}函数 处理sql多列结果的遍历真的是绝配啊,之前一直用循环控制器+count函数,或者while控制器加count函数 ...

  5. Sql 标识列 增长1000

    Sql 标识列 增长1000 的解决办法: 1. Open "SQL Server Configuration Manager" 2. Click "SQL Server ...

  6. MS SQL 标识列的查询

    摘自: http://www.2cto.com/database/201212/175000.html   SQL标识列的查询   1.判段一个表是否具有标识列    www.2cto.com   可 ...

  7. SQL 序号列ROW_NUMBER,RANK,DENSE_RANK、NTILE

    原文:SQL 序号列ROW_NUMBER,RANK,DENSE_RANK.NTILE SQL 2005新增加相关函数 : ROW_NUMBER,RANK,DENSE_RANK.NTILE 窗口函数 O ...

  8. 使用Spark加载数据到SQL Server列存储表

    原文地址https://devblogs.microsoft.com/azure-sql/partitioning-on-spark-fast-loading-clustered-columnstor ...

  9. SQL Server 列存储性能调优(翻译)

    原文地址:http://social.technet.microsoft.com/wiki/contents/articles/4995.sql-server-columnstore-performa ...

  10. SQL动态列查询

    数据库中为了实现表格数据的自由设置,我们经常设计纵表,或者列定义的表(如下KeyValue),定义一个列超级多的表中每个字段的意义. 但是在设计时简单的东西却很容易被人们忘记,如下一个简单但是很松散的 ...

随机推荐

  1. centos7

     1.启用Apache(httpd) Centos7默认已经安装httpd服务,只是没有启动.如果你需要全新安装,可以yum install -y httpd 启动服务:systemctl start ...

  2. SSIS学习笔记

    SSIS全称(Sql Server Integration Services),是 Microsoft BI 解决方案的一大利器.除了作为ETL的一种工具,在以下方面还有着突出的表现: (1) 系统维 ...

  3. [转]Python os.path模块

    os.path模块 原文链接:http://my.oschina.net/cuffica/blog/33494 basename('文件路径')    去掉目录路径,返回fname文件名 import ...

  4. 很重要的vue的生命周期

  5. 51nod 1622 集合对[算法马拉松19 C]

    题目链接:https://www.51nod.com/contest/problem.html#!problemId=1622 第一次参加算法马拉松,我就是去看大神们疯狂秒题,然后感受绝望的orz.. ...

  6. Vertica并发DML操作性能瓶颈的产生与优化(转)

    文章来源:中国联通网研院网优网管部IT技术研究团队 作者:陆昕 1. 引言 众所周知,MPP数据库以其分布式的超大存储能力以及列式的高速汇总能力,已经成为大数据分析比不可少的工具.Vertica就是这 ...

  7. JavaScript 面向对象(一) —— 基础篇

    学好JS的面向对象,能很大程度上提高代码的重用率,像jQuery,easyui等,这篇博客主要从细节上一步步讲JS中如何有效地创建对象,也可以看到常见的创建对象的方式,最后也会附上一些JS面向对象的案 ...

  8. ionic单页面应用中微信分享的问题总结

    首先说一下 ionic 是单页面应用,也就是说整个项目就有一个index.html, 那么问题就就来了, 如果我们不同的页面要分享给大家的是不同的链接和图片,应该怎么去做呢? 这就是我们今天要总结的东 ...

  9. BlackBerry 9900刷机

    1.安装BlackBerry Desktop Software: 2.安装ROM,双击9900Asia_PBr7.1.0_rel2807_PL5.1.0.692_A7.1.0.1033_China_M ...

  10. HashMap & HashTable的区别

    HashMap & HashTable的区别主要有以下: 1.HashMap是线程不安全的,HashTable是线程安全的.由这点区别可以知道,不考虑线程安全的情况下使用HashMap的效率明 ...