zoukankan      html  css  js  c++  java
  • CodeSmith中SchemaExplorer类详解

    喜欢偷懒的人 可以学学 还不错 可惜还没找到写sql语句的地方

     

     

    代码生成工具CodeSmith中SchemaExplorer类API文档

    SchemaExplorer中主要类的结构和功能:

    DatabaseSchema

    属性:

    ConnectionString:一般填写类似于ADO.NET的连接字符串

    Name:数据库名称

    Provider:驱动程序提供者,一般实例化一个SqlSchemaProvider对象

    集合:

    Commands:所有存储过程集合

    Tables:所有表的集合

    Views:所有视图的集合



    TableSchema

    属性:

    Name:表名

    Database:所在数据库

    DataCreated:创建日期

    FullName:全名

    HasPrimaryKey:是否有主键

    Owner:所有者

    PrimaryKey:主键信息



    方法:GetTableData:获取表中所有数据,结果为DataTable



    集合:

    Columns:所有列集合

    ForeignKeyColumns:所有外键列的集合

    ForeignKeys:外键信息的集合

    Indexes:所有索引的信合

    Keys:所有主键和外键的列的集合

    NonKeyColumns:所有非主键外键列的集合

    NonForeignKeyColumns:所有非外键列的集合

    NonPrimaryKeyColumns:所有非主键列的集合

    PrimaryKeys:主键信息的集合



    CommandSchema存储过程结构

    属性:

    Name:存储过程名

    FullName:全名

    Database:所在数据库

    DataCreated:创建日期

    Owner:所有者

    ReturnValueParameter:返回值参数,SQLSERVER中似乎取不到

    CommandText:存储过程的内容源代码



    集合:

    AllInputParameters:所有的输入参数集合,有可能包括即是输入又是输出的参数

    AllOutputParameters:所有输出参数的集合,有可能包括即是输入又是输出的参数

    CommandResults:存储过程的查询结果集合

    InputOutputParameters:输入输出参数的集合

    InputParameters:所有输入参数的集合

    OutputParameters:所有输出参数的集合

    Parameters:所有参数的集合

    NonReturnValueParameters:除了返回值之外的参数的集合



    ViewSchema视图结构

    属性:

    Name:视图名

    FullName:视图全名

    Database:所在数据库

    DataCreated:创建日期

    Owner:所有者

    ViewText:视图源代码



    方法:GetViewData:得到视图中的数据,返回类型为DataTable



    集合:Columns:视图中所有列的集合



    ColumnSchema列结构

    属性:

    Name:列的名称

    NonDBNull:是否允许为空

    Database:所在数据库

    DataType:内部表示的数据类型

    IsForeignKeyMember:是否为外键

    IsPrimaryKeyMember:是否为主键,通用

    IsUnique:是否唯一

    NativeType:数据库中的数据类型

    Precision:精度

    Scale:小数位数

    Size:列的长度

    SystemType:当前列在所用语言中的类型

    Table:所在的表



    ParameterSchema参数结构

    属性:

    Name:参数名称

    NonDBNull:是否为空

    Command:所在存储过程名

    Database:所在数据库

    Direction:参数的类型:输入,输出,输入输出,返回值

    NativeType:数据库中的数据类型

    Size:长度

    Precision:精度

    Scale:小数位数

    SystemType:当前列在所用语言中的类型



    ViewColumnSchema视图列的结构

    属性:

    Name:视图的名称

    NonDBNull:是否为空

    View:所在的视图

    Database:所在的数据库

    NativeType:SqlServer中的类型

    Size:长度

    Precision:精度

    Scale:小数位数

    SystemType:当前列在所用语言中的类型



    TableKeySchema表中键结构

    属性:

    Name:表的键的名称,即约束名称

    Database:所在数据库

    ForeignKeyTable:有外键的表,即子表

    PrimaryKeyTable:主键表,即主表

    PrimaryKey:主表的主键信息



    集合:

    PrimaryKeyMemberColumns:当前键信息中主键的成员列集合,即主表中的主键的列的集合

    ForeignKeyMemberColumns:当前键信息中外键的成员列集合,即子表中某个外键的列集合



    IndexSchema索引的结构

    属性:

    Name:索引名称

    Table:所在表

    DataBase:所在数据库

    Is:是否聚集索引

    IsPrimaryKey:是否为主键索引

    IsUnique:是否为唯一索引



    集合:MemberColumns:索引的列集合



    ExtendedProperty扩展信息

    Table:

    CS_isIdentity:是否为标识符,不支持Access

    CS_isComputed:是否为计算列

    CS_isDeterministic:是否确定...

    CS_IdentitySeed::标识列种子数

    CS_IdentityIncrement:标识列递增量

    CS_Default:列的默认值 

    CS_isRowGuidCol



    View:

    CS_isComputed:是否为计算列

    CS_isDeterministic:



    Command:

    CS_Default:存储过程的默认参数
  • 相关阅读:
    Combine 框架,从0到1 —— 4.在 Combine 中使用计时器
    Combine 框架,从0到1 —— 4.在 Combine 中使用通知
    Combine 框架,从0到1 —— 3.使用 Subscriber 控制发布速度
    Combine 框架,从0到1 —— 2.通过 ConnectablePublisher 控制何时发布
    使用 Swift Package Manager 集成依赖库
    iOS 高效灵活地配置可复用视图组件的主题
    构建个人博客网站(基于Python Flask)
    Swift dynamic关键字
    Swift @objcMembers
    仅用递归函数操作逆序一个栈(Swift 4)
  • 原文地址:https://www.cnblogs.com/shuzhengyi/p/1864491.html
Copyright © 2011-2022 走看看