Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
An'uta
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 16
1

Проверка по типу данных

21.12.2010, 12:58. Просмотров 718. Ответов 8
Метки нет (Все метки)

Добрый день, уважаемые!

Помогите, пожалуйста, правильно создать SQL запрос. Мне нужно произвести проверку данных в базе на несоответствие типу поля. Существует база, в которой уже есть данные ошибки. Например, в поле с числовым типом занесены какие-то звездочки (или буквы). Полей в базе около ста...
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2010, 12:58
Ответы с готовыми решениями:

Принадлежность к определенному типу данных
Проблема такова нужно вводить данные и распознавать к какому типу данных они...

Проверка данных с БД и вывод
День добрый, многоуважаеммые программисты. Есть проблема с написанием кода,...

Проверка на полноту данных
Уже спрашивала в соседней теме - без ответа.. А проблема более чем актуальная....

Проверка данных в Edit
Я сделал фильтрацию в БД, и мне нужно, чтобы когда я вводил числа в Edit, он...

Проверка импортируемых данных на существование
Добрый день. Есть код который делает импорт данных из StringGrid в таблицу...

8
arni
907 / 872 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
21.12.2010, 16:33 2
Вы не сможете в числовое поле завести буквы и звездочки - СУБД не позволит, если это конечно числовое поле, а не "подразумеваемое числовое, на самом деле символьное".
0
An'uta
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 16
22.12.2010, 07:26  [ТС] 3
Я знаю, что СУБД не позволит... Но звездочки каким-то образом туда попали и из-за этого вылетают ошибки в программе.
Изначально база писалась на фокспро, и написалась очень криво... Теперь мне нужно написать прогу, которая исправляет эти и другие ошибки...
0
SAMZ
1261 / 704 / 61
Регистрация: 21.12.2009
Сообщений: 2,255
22.12.2010, 11:30 4
Можно спросить, чем Вы просматриваете таблицы Вашей БД? Вы уверены, что эти непонятные символы в числовых полях БД? Вы уверены, что вы не смотрите записи, помеченные как удаленные? Насколько мне помнится в файлах формата dbf записи при удалении физически не удаляются, а помечаются специальным символом, как удаленные. Если Вы просматриваета таблицу каким нибудь специальным инструментом и имеете возможность доступа к записям, помеченным как удаленные, то теоретически это может быть причиной такого мусора в полях. В ощем случае в поле, описанное как числовое в действующей записи такого "мусора" быть не может, как Вам и писал Arni
0
An'uta
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 16
23.12.2010, 08:34  [ТС] 5
Цитата Сообщение от SAMZ Посмотреть сообщение
чем Вы просматриваете таблицы Вашей БД?
Сейчас я базы просматриваю через фокспро.

Цитата Сообщение от SAMZ Посмотреть сообщение
Вы уверены, что эти непонятные символы в числовых полях БД?
уверенна

Цитата Сообщение от SAMZ Посмотреть сообщение
Вы уверены, что вы не смотрите записи, помеченные как удаленные?
уверенна


Цитата Сообщение от SAMZ Посмотреть сообщение
В ощем случае в поле, описанное как числовое в действующей записи такого "мусора" быть не может, как Вам и писал Arni
Я это знаю. Сама не знаю каким образом это туда попало. Поэтому прошу вас мне помочь

Данные вводились через программу, написанную на фокспро. Поле Numeric, width=2. Вместо числовых данных тут введены три звездочки...

Добавлено через 12 минут
Где логика?
0
SAMZ
1261 / 704 / 61
Регистрация: 21.12.2009
Сообщений: 2,255
23.12.2010, 09:39 6
Поле Numeric, width=2.
Вы можете увеличить к-во значащих цифр поля? Возможно появление символа "*" связано с тем, что реальному значению поля не хватает width=2
0
An'uta
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 16
23.12.2010, 10:33  [ТС] 7
Цитата Сообщение от SAMZ Посмотреть сообщение
Вы можете увеличить к-во значащих цифр поля? Возможно появление символа "*" связано с тем, что реальному значению поля не хватает width=2
Я тоже так думаю, но менять значение поля нельзя. К сожалению.
0
SAMZ
1261 / 704 / 61
Регистрация: 21.12.2009
Сообщений: 2,255
23.12.2010, 10:47 8
но менять значение поля нельзя. К сожалению.
Не значение поля, а количество значащих цифр. Я с фокспро не работаю, но практически любве БД позволяют реструктурировать данные. С высокой степенью вероятности причина в этом
0
An'uta
0 / 0 / 0
Регистрация: 21.12.2010
Сообщений: 16
23.12.2010, 10:57  [ТС] 9
Цитата Сообщение от SAMZ Посмотреть сообщение
количество значащих цифр
понятно. Нельзя. Потому что с программой работают во многих городах, сюда присылаются только базы для обработки. Если я у себя поменяю, то получится конфликт... Это, конечно, можно сделать, но получится геморр... Нужно отправить официальное письмо разработчикам, мол там-то-там, у вас трабла. Потом покаааа они это все сделают по-человечески, покааа они разошлют обновления, покаааа на местах это все установится... Ну вобщем, лучше здесь сделать проверку и не париться. В госах по-другому никак, сами знаете.

И мне не нужно делать проверку в фокспро, с базой я работаю на делфи. Т.е. базу подключаю к делфийской проге. А там я что хочу, то и творю...
0
23.12.2010, 10:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.12.2010, 10:57

DBGRID сложная проверка на обновление данных
Здравствуйте. Есть DBGRID DATASOURCE ADOQUERY всё связанно между собой. Данные...

DBGRID сложная проверка на обновление данных
Здравствуйте. Есть DBGRID DATASOURCE ADOQUERY всё связанно между собой. Данные...

Проверка на вхождение логина в базу данных
В общем суть такая. Есть набор данных в СУБД Access столбец с данными. Как...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru