Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с удалением числа с БД 
V
    Опции темы
Flotskiy
Дата 14.8.2006, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 223
Регистрация: 15.11.2004
Где: г. Омск

Репутация: 1
Всего: 2



Добрый день всем! ( VB6, Access97) Столкнулся с такой проблемой. Пример:
В таблице есть поле ( оценка по математике), тип-числовой, поле не обязательное, значение по умолчанию - нет.
При занесении в поле ошибочно любое число, его нельзя удалить, редактировать - можно, а удалить нельзя. Надо забираться в БД и там удалять ошибочную запись, а через программу никак. Где-то видел такой же вопрос, но не обратил внимание. Подскажите решение данного вопроса.
Всего доброго! 

--------------------
FlotskiySk k
PM MAIL   Вверх
mihanik
Дата 14.8.2006, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Вопрос 1: "Как именно ты пытаешься удалить значение?"
Вопрос 2: "Ты можешь, например, использовать 0 как признак того, что данное поле пусто?"
Действительно, ведь оценка не может быть меньше 1.
Не нравиться 0, - возьми "-1".
Не выход?

Добавлено @ 10:43 
С другой стороны, если поле является "необязательным", то это означает, что придавать значение ему не обязательно, но в БД оно так и так будет. Просто значения в нём ёк.



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Akina
Дата 14.8.2006, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Поле с числовым типом может иметь содержимое Null, если нет дефолтного значения и значение не заносилось. Но увы - ему нельзя присвоить такое содержимое.

Правильно - установить значение, которое соответствует отсутствию оценки (лучше 0 - можно будет делать отбор как по логическому полю), и его прописАть как дефолт.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Flotskiy
Дата 15.8.2006, 06:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 223
Регистрация: 15.11.2004
Где: г. Омск

Репутация: 1
Всего: 2



Добрый день всем!
mihanik, на первый вопрос:
Есть программа, БД Access97 имеет 2 табл связанные: Student и Evaluation. 
Во вторую таблицу заносятся оценки определенного студента в числовые поля БД
------------------------------
Математика   - 5
Русский язык  -  
Химия             - 4  и т.д.
----------------------------
при помощи DAO. Если ошибочно в поле "Русский язык" ввести любое число, то его не сотрешь и "0" нельзя ставить, т.к. есть выборки: "Выбор списка студентов, имеющие оценки по русскому яз" и другие. 
Если поле определить как "Текстовый" то проблем нет, но в дальнейшем с оценками мужно производить некоторые математические  действия: суммирование, нахождение среднего балла и т.п. И здесь приходится переводить из String в Integer.
Короче, одни неудобства. Благодарю за помощь.
Всего доброго всем.


--------------------
FlotskiySk k
PM MAIL   Вверх
Akina
Дата 15.8.2006, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(Flotskiy @  15.8.2006,  07:10 Найти цитируемый пост)
"0" нельзя ставить, т.к. есть выборки: "Выбор списка студентов, имеющие оценки по русскому яз" и другие. 

Значит, выборки эти сделаны неправильно. Должно быть типа
Код
select *
from students
where 
(  (
      subj = "Русский язык"
   )
   and
   (
      mark between 1 and 5
   )
)
Переделай нормально, и проблема отпадет сама собой.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Flotskiy
Дата 15.8.2006, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 223
Регистрация: 15.11.2004
Где: г. Омск

Репутация: 1
Всего: 2



Akina, благодарю, вопрос решен
Всего доброго.
--------------------
FlotskiySk k
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

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

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0696 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.