6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
1

Ошибка в связях базы данных

20.11.2009, 20:18. Показов 4926. Ответов 30
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дорбрый день. Мне надо создать БД "Прокат дисков", но я не могу создать запрос для формы, выдаётся ошибка "О повторяющихся значениях в индексе, ключевых полях или связях". Данный вопрос задавал на другом форуме, но из-за действий модератора она была перенесена и похоронена (за несколько дней ниодного ответа) и, чтоб не копипастить и передать всю суть обсуждения и ошибок, без изменения, прошу прочесть ту тему, а потом мне ответить.

PS. Думаю, тут нормальные модераторы и тема не будет перенесена из-за каких-то глупых правил.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.11.2009, 20:18
Ответы с готовыми решениями:

При открытии базы данных FoxPro в приложение Delphi возникает ошибка драйвера внешней базы данных (8961)
При открытии базы данных FoxPro в приложение Delphi возникает ошибка драйвера внешней базы данных...

Добавление данных (непонятка в связях)
Добрый вечер! Есть 2 таблицы в MySQL (black(id,ИНН,Название) и black_info(id, город, телефон,...

Ошибка при поиске данных в таблице базы данных
Здравствуйте! Коллеги, прошу пожалуйста вашей помощи в такой проблеме: пишу программу в которой...

Ошибка "Повторяющийся значения в индексе, ключевых полях или связях"
помогите исправить ошибку на всякий скину программу вообще должна была быть корзина ошибка...

30
10065 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
20.11.2009, 20:41 2
blogger, ты базу выложи-то
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
20.11.2009, 22:28  [ТС] 3
фтопку вингард, они нам даже не конкуренты, а так, тьфу и растереть )))
Надеюсь это так)) Но всё-таки зачем вы удалили ссылку??Мне теперь предётся всё заново объяснять.

И так....Этот вопрос задавался на другом форуме и поступил такой ответ (он был единственным):

У Вас в форме "Новый заказ" источником записей служит запрос (таблицы "Клиенты" и "Архив заказов"), и при вводе новой фамилии клиента в форме в таблицу "клиенты" заносится только фамилия. Т.е. код клиента (индексированное поле) имеет значение 0, а это значение в таблице уже есть.

Чтобы посмотреть как это происходит в "Новой форме" в источнике записей вызовите построитель запросов и внесите в запрос все имеющиеся в таблицах (Клиенты и Архив заказов) поля, и в конструкторе внесите эти поля в форму.
я потом исправил базу в соответсвие ответа и ответил следующим постом:

Я понял, что в запрос "Новый заказ", надо добваить поле "Код клиента" и "Код заказа", но всё равно, когда я в ручную ввожу "Код клиента", появляется таже ошибка, что и была. Запрос называется "Новый заказ (Без Прайса)".

Мне также в этом запросе необходима таблица "Прайс", а с неё после "Цена", но когда я добовляю Прайс, то исключается возможность добовляения новой записе в запросе. Посмотрите сами, запрос называется "Новый заказ (С Прайсом)"
PS. Я это написал, чтоб Вы поняли, что и почему я именил в БД. Старой БД у меня не осталось, но есть видео с той ошибкой, по которой я сначала написал на винград.
Конечно, лучше б было, чтоб модератор разрешил оставить ссылку на ту тему)))
Вложения
Тип файла: rar Прокат дисков.rar (429.3 Кб, 72 просмотров)
Тип файла: rar video BD.rar (284.3 Кб, 63 просмотров)
0
10065 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
20.11.2009, 22:36 4

Не по теме:

blogger, давай или завтра, или в понедельник. седня пятница. вечер. тяжко. хочется отдохнуть))


кстати, я так понял акс2003, переведи в акс2000, плиз
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
20.11.2009, 23:29  [ТС] 5
Да нет, база данных в формате Access 2000.

blogger, давай или завтра, или в понедельник. седня пятница. вечер. тяжко. хочется отдохнуть))
Конечно, я понимаю, но ты тоже пойми - сроки поджимают у меня))))Короче, жду помощи, там ошибка не сложная просто как для меня, новичка, кажется сложной
0
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
21.11.2009, 19:25 6
Мне кажется немного неверно создана форма: Вы делаете основную форму на основании запроса выборки и подчиненную форму на основе запроса выборки. Основную форму в свойствах "даные"/"источник записей" не указывайте ничего. Создайте поля, для которых надо задать в событии "после обновления" или "изменение" запрос добавления INSERT ... в свойствах элемента управления (т.е. поля). Или по нажатию кнопки выполнение запросов добавления. У Вас получается, что в основной форме делается выборка и в подчиненной тоже, Вы же хотите добавлять данные.
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
22.11.2009, 01:17  [ТС] 7
Елена, мне кажется, я вас понял, но могу это сделать, но в тоже время и не понял))
Цитата Сообщение от Елена_ Посмотреть сообщение
Создайте поля, для которых надо задать в событии "после обновления" или "изменение" запрос добавления INSERT
Мне необходим запрос, чтоб создать форму "Новый заказ", в этом запросе должны быть поля: код клиента, Код заказа (нужен ли?), Фамилия, Название, Жанр, Дата выдачи, Цена. Вот какие поля тут "после обновления" а какие "до"?
Цитата Сообщение от Елена_ Посмотреть сообщение
У Вас получается, что в основной форме делается выборка и в подчиненной тоже, Вы же хотите добавлять данные.
Возможно, это ещё от неопытности, но, я думаю, что сразу надо правильно запрос создать, а потом делать форму. Потому что, если я не могу добавить новую запись в запрос, то, ясное дело, что и в форме этого не получится.
Вот ещё вопрос: почему новая запись добовляется в запрос "новый заказ", когда там нет таблицы "Прайс"? Она ж мне нужна для отчётности.
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
23.11.2009, 18:12  [ТС] 8
Программисты, ответьте. Мне её сдавать через пару дней, а так обидно, что всё готово, а одна ошибка, которую я не могу найти, мешает сдачи.
0
10065 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
23.11.2009, 18:30 9
Цитата Сообщение от blogger Посмотреть сообщение
а одна ошибка
там не одна ошибка
для начала как минимум надо эту связь разорвать
Миниатюры
Ошибка в связях базы данных  
0
arch-vile
23.11.2009, 18:31
  #10

Не по теме:

CyberБурундукЪ:

Цитата Сообщение от CyberБурундукЪ Посмотреть сообщение
blogger, давай или завтра, или в понедельник. седня пятница. вечер. тяжко. хочется отдохнуть))
;D :rofl:


Не по теме:

Блин, не успел...

0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
23.11.2009, 19:10  [ТС] 11
Связь разорвал, но теперь я всё равно не могу вносить изменения в запросе, а именно в поле "Цена".
Цитата Сообщение от CyberБурундукЪ Посмотреть сообщение
там не одна ошибка
Я знаю свою ошибку, но не могу её найти - мне надо правильно расставить связи между таблицами в запросе "Новый заказ", чтоб можно было вносить изменения в этот запрос, который в будущем послужит для создания формы с аналогичным названием.
0
511 / 2 / 1
Регистрация: 14.10.2009
Сообщений: 31
24.11.2009, 16:25 12
открой таблицу с помощью конструктора там в низу в поле которое ты связываеш будит строка индексированое поле и тебе нужно выбрать да совпадения допускаютса а в той таблице которая будит оснавная при связке ну жно в даном поле выбрать да совпадения не допускаютса
может быть именно в етом проблема)))
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
24.11.2009, 23:30  [ТС] 13
Наталия_Dona, чтоб выполнить, что Вы говорите, мне надо разорвать везьде связи, поменять с "Да (Совпадения допускаются)" на "Да (Совпадения не допускаются)" и обратно связать БД. Да, я бы это сделал, если б был в этом смысл, так как ключевое поле должно быть уникальным и не может повторяться.

И всё же, вопрос остаётся открытым: почему я не могу вводить в запросе "Новый заказ" данные в поле "Дата выдачи", а в поле "Цена" появляется ошибка.
0
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
25.11.2009, 06:18 14
Цитата Сообщение от blogger Посмотреть сообщение
Наталия_Dona, чтоб выполнить, что Вы говорите, мне надо разорвать везьде связи, поменять с "Да (Совпадения допускаются)" на "Да (Совпадения не допускаются)" и обратно связать БД. Да, я бы это сделал, если б был в этом смысл, так как ключевое поле должно быть уникальным и не может повторяться.

И всё же, вопрос остаётся открытым: почему я не могу вводить в запросе "Новый заказ" данные в поле "Дата выдачи", а в поле "Цена" появляется ошибка.
Скинь базу с исправленным
0
511 / 2 / 1
Регистрация: 14.10.2009
Сообщений: 31
25.11.2009, 18:16 15
а ты макросы на добавление создавал????

Добавлено через 1 минуту
ты наверно просто связал не все таблици, нужные для роботы
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
25.11.2009, 22:29  [ТС] 16
Елена_, пожалуйста, базу добавил.
Цитата Сообщение от Наталия_Dona Посмотреть сообщение
а ты макросы на добавление создавал????
Нет, потому что и без них обхожусь. Я не вижу необходимости для простых запросов использовать макросы, зачем усложнять))А может быть, я, просто, не сильно в них хорошо разбираюсь

Цитата Сообщение от Наталия_Dona Посмотреть сообщение
ты наверно просто связал не все таблици, нужные для роботы
Возможно, поэтому и хочу узнать, где я ошибся, чтоб больше не повторять эту ошибку, так как на мне ещё полгруппы висит и каждому надо делать
Вложения
Тип файла: rar Прокат дисков.rar (425.8 Кб, 30 просмотров)
0
2454 / 797 / 24
Регистрация: 18.08.2009
Сообщений: 1,697
26.11.2009, 09:36 17
Я немного переделала таблицы и схему данных. Сделала форму "Заказы". Теперь вопрос: в одном заказе может быть несколько дисков, я думаю, что в форме надо сделать кнопку, при нажатии на которую информация попадет в таблицу "Архив заказов", в этой таблице нет ключей, т.к. данные по коду заказа, коду клиента будут повторяться. Или я не так поняла?
Вложения
Тип файла: rar Прокат дисков1.rar (359.0 Кб, 53 просмотров)
1
511 / 2 / 1
Регистрация: 14.10.2009
Сообщений: 31
26.11.2009, 14:38 18
ну вот мы делаем на лабах макросы))
и при двойном нажатии по полю появитса новая форма

Добавлено через 35 секунд
Створити список прізвищ, що самозаповнюється, щоб при введенні нового прізвища це прізвище автоматично попадало в список , і згодом це прізвище можна було б вибрати зі списку, а не набирати заново. Для цього виконайте наступні дії:
1. Створіть форму, засновану на таблиці “Анкета” з ім'ям “Форма для добавления записей”. Ця форма буде використовуватися для додавання в список нових пунктів.
2. Створіть групу макросів. Будьте дуже уважні при виконанні цього пункту!
• вибрати вкладку “Макросы“, натиснути кнопку “Создать”;
• ввести макрокоманду “Открыть форму”.
 Ім'я форми: “Форма для добавления записей”
 Режим: Форма
 Режим даних: Добавление
 Режим вікна: Обычный
• закрити вікно і зберегти макрос з ім'ям “Добавление”;
• створити наступний макрос:
• ввести макрокоманду “Выполнить команду”;
 Команда “Сохранить запись” (Save Record).
• ввести макрокоманду “Выделить объект”.
 Тип обьекта: Форма
 Ім'я обьекта: Анкета
 У вікні бази даних: Нет
• ввести макрокоманду “Обновление”
 Ім'я елемента: Фамилия
• закрити вікно і зберегти макрос з ім'ям “Закрытие”.
3. Переключиться у форму “Форма для добавления записей” у режимі конструктора.
4. Вибрати режим “Вид/Свойтва”.
5. Відкрити вкладку “События”.
6. Додати макрос “Закрытие” у властивість “Закрытие формы”.
7. Закрити форму.
8. Відкрийте в режимі конструктора форму “Анкета”.
9. Клацніть правою кпопкою мишки в полі “фамилия”, виберіть пункт “Свойства”:
• відкрийте вкладку “События”;
• вкажіть ім'я макросу “Добавление” в полі введення властивості “Двойное нажатие кнопки”.
0
6 / 6 / 1
Регистрация: 20.11.2009
Сообщений: 140
27.11.2009, 17:27  [ТС] 19
Елена_, большое Вам спасибо. Форма "Заказы" именно то, что мне надо. Если можно, расскажите как вы это делали. И, пожалуйста, укажите, где я ошибся.

Наталия_Dona, У нас сжатая программа (другими словами - через жопу всё) и макросы у нас даются, я так предполагаю, на самостоятельное рассмотрение: хочешь - учи, не хочешь - не учи. Мы учим всё очень поверхностно. За полгода, которые мы "учили" С++ я так и ничего не выучил))щас вот хоч сам сесть и учить)))

Добавлено через 53 минуты
На многих сайтах есть вот такая схема данных БД "Поликлиника"
[IMG]http://s57.***********/i155/0911/fb/9b81eac7254f.gif[/IMG]
Вопрос: Для чего тут таблицы "Должности" и "Специалиции" с полем "Код"?
0
10065 / 2622 / 84
Регистрация: 17.02.2009
Сообщений: 10,364
27.11.2009, 18:22 20
Цитата Сообщение от blogger Посмотреть сообщение
Вопрос: Для чего тут таблицы "Должности" и "Специалиции" с полем "Код"?
видишь справа лифт? эт значит, что не вся инфа выведена
связь таблицы врачи с таблицами должности и специализация идет по числовым полям
таблицы должности и специализация я вляются справочниками должностей и специализаций соответсвенно

Добавлено через 42 секунды
кстати, в таблицах поциенты и врачи тож не все поля изображены
0
27.11.2009, 18:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2009, 18:22
Помогаю со студенческими работами здесь

Ошибка базы данных
Привет . Подскажите пожалуйста как вылечить Notice: Error: You have an error in your SQL...

Ошибка базы данных
1C 8.0 в справочнике добавил пустую запись и началось: Ошибка СУБД: Внутренняя ошибка компоненты...

ошибка базы данных
При попытке записать в БД выдает ошибку: You have an error in your SQL syntax; check the manual...

Ошибка базы данных
Измена пароля к phpMyadmin, привела к сообщению на сайте, Database Error: Unable to connect to the...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru