public Columns(string owner, string tableName) { _tableName = tableName; Owner = owner; Sql = @"select c.TABLE_SCHEMA, c.TABLE_NAME, COLUMN_NAME, ORDINAL_POSITION, COLUMN_DEFAULT, IS_NULLABLE, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, NUMERIC_PRECISION, NUMERIC_SCALE, DATETIME_PRECISION from INFORMATION_SCHEMA.COLUMNS c JOIN INFORMATION_SCHEMA.TABLES t ON c.TABLE_SCHEMA = t.TABLE_SCHEMA AND c.TABLE_NAME = t.TABLE_NAME where (c.TABLE_SCHEMA = @Owner or (@Owner is null)) and (c.TABLE_NAME = @TableName or (@TableName is null)) AND TABLE_TYPE = 'BASE TABLE' order by c.TABLE_SCHEMA, c.TABLE_NAME, ORDINAL_POSITION"; var keyMap = new ColumnsKeyMap(); _converter = new ColumnRowConverter(keyMap); }
public ViewColumns(string owner, string viewName, string[] additionalViewColumnPropertyNames, int commandTimeout) : base(additionalViewColumnPropertyNames, commandTimeout) { _viewName = viewName; Owner = owner; Sql = @"select c.TABLE_SCHEMA, c.TABLE_NAME, COLUMN_NAME, ORDINAL_POSITION, COLUMN_DEFAULT, IS_NULLABLE, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, NUMERIC_PRECISION, NUMERIC_SCALE, DATETIME_PRECISION from INFORMATION_SCHEMA.COLUMNS c JOIN INFORMATION_SCHEMA.VIEWS v ON c.TABLE_SCHEMA = v.TABLE_SCHEMA AND c.TABLE_NAME = v.TABLE_NAME where (c.TABLE_SCHEMA = @Owner or (@Owner is null)) and (c.TABLE_NAME = @TableName or (@TableName is null)) order by c.TABLE_SCHEMA, c.TABLE_NAME, ORDINAL_POSITION"; var keyMap = new ColumnsKeyMap(); _converter = new ColumnRowConverter(keyMap); }
public Columns(string owner, string tableName, string[] additionalPropertyNames, int commandTimeout) : base(additionalPropertyNames, commandTimeout) { _tableName = tableName; Owner = owner; Sql = @"select c.TABLE_SCHEMA, c.TABLE_NAME, c.COLUMN_NAME, c.ORDINAL_POSITION, c.COLUMN_DEFAULT, c.IS_NULLABLE, c.DATA_TYPE, c.CHARACTER_MAXIMUM_LENGTH, c.NUMERIC_PRECISION, c.NUMERIC_SCALE, c.DATETIME_PRECISION {0} from INFORMATION_SCHEMA.COLUMNS c JOIN INFORMATION_SCHEMA.TABLES t ON c.TABLE_SCHEMA = t.TABLE_SCHEMA AND c.TABLE_NAME = t.TABLE_NAME {1} where (c.TABLE_SCHEMA = @Owner or (@Owner is null)) and (c.TABLE_NAME = @TableName or (@TableName is null)) AND TABLE_TYPE = 'BASE TABLE' order by c.TABLE_SCHEMA, c.TABLE_NAME, ORDINAL_POSITION"; AdditionalPropertiesJoin = @"LEFT OUTER JOIN sys.tables syst ON c.TABLE_SCHEMA = schema_name(syst.schema_id) AND c.TABLE_NAME = syst.name LEFT OUTER JOIN sys.columns {ai} ON syst.object_id = {ai}.object_id AND c.COLUMN_NAME = {ai}.Name".Replace("{ai}", ADDITIONAL_INFO); var keyMap = new ColumnsKeyMap(); _converter = new ColumnRowConverter(keyMap); }