0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 32

"Преобразование типа данных VARCHAR в тип данных smalldatetime привело к выходу значения за пределы диапазона"

16.05.2019, 18:41. Показов 15590. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
пытаюсь запросом установить дату но выдает ошибку
SQL
1
2
Сообщение 242, уровень 16, состояние 3, строка 56
Преобразование типа данных VARCHAR в тип данных smalldatetime привело к выходу значения за пределы диапазона.
SQL
1
2
3
4
5
6
7
8
USE [Услуги связи]
INSERT INTO [Услуги клиента]
VALUES
    (1,1,'2000-03-12 12:53:00'),
    (1,1,'2010-07-04 20:43:00'),
    (2,1,'2010-09-23 22:43:00'),
    (4,1,'2013-01-01 12:03:00'),
    (7,1,'2000-03-12 12:43:00')
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.05.2019, 18:41
Ответы с готовыми решениями:

Преобразование типа данных varchar в тип данных smalldatetime привело к выходу значения за пределы диапазона
Здравствуйте. помогите пожалуйста. что может привести к этой ошибке(ошибка в заголовке темы)? DECLARE @counter int, ...

Преобразование типа данных nvarchar в тип данных datetime привело к выходу значения за пределы диапазона
Проблема:При открытии базы данных mssql происходит ошибка :Преобразование типа данных nvarchar в тип данных datetime привело к выходу...

Преобразование типа данных varchar в тип данных datetime привело к выходу значения за пределы диапазона
public Form_List(string a) { str = a; InitializeComponent(); dgDocum.DataSource =...

4
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
16.05.2019, 20:07
Лучший ответ Сообщение было отмечено Donat0 как решение

Решение

Это потому, что 23-го месяца не бывает!
Что вернёт
T-SQL
1
2
SELECT STUFF(STUFF(STUFF('___',F%10,1,'D'),F/100%10,1,'M'),F/10000,1,'Y')
FROM (SELECT CONVERT(CHAR, CAST('1/2/3' AS DATETIME),12)) D(F);
??

Используйте строки с датами-временем в формате 'YYYY-MM-DDThh:mm:ss.nnn'
И всё будет нормально всегда.

Или 'YYYYMMDD hh:mm:ss.nnn'

Хотя, надо учесть, что секунд у типа SMALLDATETIME быть не может.
0
3614 / 2135 / 756
Регистрация: 02.06.2013
Сообщений: 5,169
16.05.2019, 20:07
Варианты:
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
set language russian;
USE [Услуги связи]
INSERT INTO [Услуги клиента]
VALUES
    (1,1,'2000-03-12 12:53:00'),
    (1,1,'2010-07-04 20:43:00'),
    (2,1,'2010-09-23 22:43:00'),
    (4,1,'2013-01-01 12:03:00'),
    (7,1,'2000-03-12 12:43:00')
 
USE [Услуги связи]
INSERT INTO [Услуги клиента]
VALUES
    (1,1,'20000312 12:53:00'),
    (1,1,'20100704 20:43:00'),
    (2,1,'20100923 22:43:00'),
    (4,1,'20130101 12:03:00'),
    (7,1,'20000312 12:43:00')
 
USE [Услуги связи]
INSERT INTO [Услуги клиента]
VALUES
    (1,1,'2000-03-12T12:53:00'),
    (1,1,'2010-07-04T20:43:00'),
    (2,1,'2010-09-23T22:43:00'),
    (4,1,'2013-01-01T12:03:00'),
    (7,1,'2000-03-12T12:43:00')
0
0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 32
16.05.2019, 21:12  [ТС]
Цитата Сообщение от iap Посмотреть сообщение
Используйте строки с датами-временем в формате 'YYYY-MM-DDThh:mm:ss.nnn'
И всё будет нормально всегда.
смотря на пример на сайте майков считал что формат гггг-мм-дд
SQL
1
2
3
4
5
6
7
8
9
10
11
DECLARE @smalldatetime smalldatetime = '1955-12-13 12:43:10';  
DECLARE @DATE DATE = @smalldatetime  
  
SELECT @smalldatetime AS '@smalldatetime', @DATE AS 'date';  
  
--Result  
--@smalldatetime          date  
------------------------- ----------  
--1955-12-13 12:43:00     1955-12-13  
--  
--(1 row(s) affected)
0
1116 / 761 / 183
Регистрация: 27.11.2009
Сообщений: 2,272
17.05.2019, 09:40
Цитата Сообщение от Donat0 Посмотреть сообщение
смотря на пример на сайте майков считал что формат гггг-мм-дд
SQL
1
2
3
4
5
6
7
8
9
10
11
DECLARE @smalldatetime smalldatetime = '1955-12-13 12:43:10';  
DECLARE @DATE DATE = @smalldatetime  
  
SELECT @smalldatetime AS '@smalldatetime', @DATE AS 'date';  
  
--Result  
--@smalldatetime          date  
------------------------- ----------  
--1955-12-13 12:43:00     1955-12-13  
--  
--(1 row(s) affected)
Это всё легко самому проверить.

1. Выбрать дату с днём >12
2. Выполнить SET DATEFORMAT mdy;
3. Выполнить SELECT с преобразованием строки, которую вы написали, в SMALLDATETIME.
4. Выполнить SET DATEFORMAT dmy;
5. Выполнить SELECT с преобразованием строки, которую вы написали, в SMALLDATETIME.

На 3-м или 5-м пункте получите сообщение об ошибке.
Это означает, что сервер интерпретирует строку, глядя в свои внутренние настройки.
Форматы, которые я вам посоветовал, интерпретируются всегда одинаково, без зависимости от каких-либо настроек.
Для них вы никаких сообщений не получите.

Для новых типов даты-времени (DATE, DATETIME2 и т.п.) формат 'YYYY-MM-DD' тоже сделали инвариантным.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.05.2019, 09:40
Помогаю со студенческими работами здесь

Ошибка "Преобразование значения типа varchar привело к переполнению столбца типа int" ?
Проблемы с SQL Server Создал таблицу: use LivlagsBar go IF EXISTS (SELECT name FROM sys.objects WHERE name =...

Преобразование данных типа varchar в DATE
Есть три таблицы. create database test; use test; CREATE TABLE `my_t` ( `id` INT(255) UNSIGNED NOT NULL AUTO_INCREMENT...

Ошибка преобразования значения varchar в тип данных int
Доброго времени суток! Есть три простые таблицы в базе Shop: первая - All_buy с данными о товарах: ( tovar_id integer ...

Ошибка преобразования значения varchar в тип данных int
Можете помочь починить или переделать запросы чтобы все работало. Долго парился и вроде настроил а оно все равно не работает Есть...

Ошибка преобразования значения varchar в тип данных int"
Нужно цифру из выбранного ряда в dataGridView1 разделить на 3 и вывести результат в текстбокс sumprtxt выдает ошибку Ошибка...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru