Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
Здравствуйте. Подскажите пожалуйста, как изменить тип данных из таблицы? Для импорта использовал мастер экспорта и импорта, на этом этапе не нашел как преобразовывать, поэтому все в varchar.

К сообщению приложен файл. Размер - 34Kb
15 дек 11, 23:04    [11775207]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
При попытке изменить в таблице на int ругается, что невозможно. Если изменить на другой тип, выдает ошибку (на картинке)
15 дек 11, 23:05    [11775210]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
Glory
Member

Откуда:
Сообщений: 104751
AlexeyGor
При попытке изменить в таблице на int ругается, что невозможно

И к какому числу должна быть по-вашему преобразована строка ААААА ?

AlexeyGor
Если изменить на другой тип, выдает ошибку

Выполняйте команду ALTER TABLE сами, а не через дизайнер
15 дек 11, 23:12    [11775227]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
сейчас у меня данные в формате 200000.00000, мне нужно преобразовать в любой тип, с которым можно будет работать функциями типа avg..

И к какому числу должна быть по-вашему преобразована строка ААААА ?

Например int, следовательно мне бы хотелось чтобы строка преобразовывалась в вид 200000. Но в будущем могут быть и другие варианты, когда после запятой есть значения и тоже надо будет посчитать среднее. Я так понимаю что float подойдет в таком случае...


Выполняйте команду ALTER TABLE сами, а не через дизайнер

Спасибо, сейчас почитаю про эту возможность.
15 дек 11, 23:23    [11775255]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
Glory
Member

Откуда:
Сообщений: 104751
AlexeyGor
И к какому числу должна быть по-вашему преобразована строка ААААА ?

Например int, следовательно мне бы хотелось чтобы строка преобразовывалась в вид 200000.

АААА преобразуется к 200000 ? Здорово ! а BBBB наверное к 300000 ?
15 дек 11, 23:26    [11775263]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
Glory,

у меня не АААА, а 20000.00000 и хочу преобразовать к 20000
15 дек 11, 23:27    [11775268]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
Glory
Member

Откуда:
Сообщений: 104751
AlexeyGor
у меня не АААА, а 20000.00000 и хочу преобразовать к 20000

У вас там одна запись в таблице что ли ?
15 дек 11, 23:29    [11775271]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
порядка 10млн строк, и все формата типа double (как это было бы с C#)

Надо посчитать среднее, но avg с varchar не работает


194760.00000
194705.00000
194505.00000
194305.00000
194005.00000
174400.00000
194055.00000
192575.00000
193575.00000
15 дек 11, 23:31    [11775276]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
Glory
Member

Откуда:
Сообщений: 104751
Ну так наверное double числа надо преобразовывать в тип данных тоже с дробной частью, а не без таковой
Вы не находите это логичным ?
15 дек 11, 23:48    [11775312]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
нахожу.. преобразую по float, сейчас разбираюсь с ALTER TABLE , через дизайнер не получается (
16 дек 11, 00:02    [11775337]     Ответить | Цитировать Сообщить модератору
 Re: Не преобразует типы данных в таблице  [new]
AlexeyGor
Member

Откуда:
Сообщений: 35
Спасибо! заработало

код для изменения типа столбца

ALTER TABLE [название базы].[dbo].[название таблицы] ALTER COLUMN название столбца FLOAT - тип на который меняем ;
GO

К сообщению приложен файл. Размер - 3Kb
16 дек 11, 00:44    [11775429]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить