SQL Server DataType Testing - PullRequest
       7

SQL Server DataType Testing

0 голосов
/ 18 ноября 2009

У меня есть столбец с именем code в исходной таблице типа varchar (40), и они изменили его с varchar (40) на varchar (65). Мы создали пакет ETL и создаем 3 таблицы. Во всех 3 таблицах столбец необходимо изменить с varchar (40) на varchar (65).

Теперь мне нужно проверить это изменение. Я знаю, изучая структуру таблицы, мы можем просто сказать, что столбец изменен с varchar (40) на varchar (65).

Есть ли другой способ проверить это изменение?

Любая помощь очень ценится !!!!

Ответы [ 3 ]

0 голосов
/ 18 ноября 2009

Попробуйте DESC TableName дает вам достаточно и больше подтверждения.

0 голосов
/ 18 ноября 2009

Получить информацию о столбце, используя INFORMATION_SCHEMA просмотров:

SELECT  c.DATA_TYPE,
        c.CHARACTER_MAXIMUM_LENGTH
FROM    INFORMATION_SCHEMA.COLUMNS c
WHERE   c.TABLE_SCHEMA = 'dbo' --//@todo: put your schema name here
    AND c.TABLE_NAME  = 'MyTableName1'
    AND c.COLUMN_NAME = 'MyColumnName1'

См. здесь для описания возвращаемых столбцов, где вам больше всего нужны DATA_TYPE и CHARACTER_MAXIMUM_LENGTH.

Конечно, вы можете создать 1 запрос для всех 3 проверок, используя:

SELECT  c.DATA_TYPE,
        c.CHARACTER_MAXIMUM_LENGTH
FROM    INFORMATION_SCHEMA.COLUMNS c
WHERE   c.TABLE_SCHEMA = 'dbo' --//@todo: put your schema name here
    AND(   (c.TABLE_NAME = 'MyTableName1' AND c.COLUMN_NAME = 'MyColumnName1')
        OR (c.TABLE_NAME = 'MyTableName2' AND c.COLUMN_NAME = 'MyColumnName2')
        OR (c.TABLE_NAME = 'MyTableName3' AND c.COLUMN_NAME = 'MyColumnName3')
        )
0 голосов
/ 18 ноября 2009

«Они» хранили оригинальные данные где-нибудь? Организовать, чтобы проверить, что значения все те же. Или, возможно, он сейчас используется, есть ли значения длиннее 40 символов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...