С Новым годом! Форум программистов, компьютерный форум, киберфорум
Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 03.02.2014
Сообщений: 103

Не заполняются данные в таблицу

02.12.2017, 06:31. Показов 1305. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не заполняются данные для таблиц "Статьи" и "Авторы и статьи", при попытке заполнить сущность "Статьи" выдает ошибку Integrity constraint violation - no parent С5 table: Выпуски журналов & разделы

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
DROP TABLE "Авторы и статьи" IF EXISTS;
DROP TABLE "Научные журналы & Области науки" IF EXISTS;
DROP TABLE "Статьи" IF EXISTS;
DROP TABLE "Выпуски журналов & разделы" IF EXISTS;
DROP TABLE "Авторы" IF EXISTS;
DROP TABLE "Разделы" IF EXISTS;
DROP TABLE "Область науки" IF EXISTS;
DROP TABLE "Выпуски журналов" IF EXISTS;
DROP TABLE "Научные журналы" IF EXISTS;
 
CREATE TABLE "Научные журналы"(
"Код журнала" INTEGER NOT NULL,
"Издательство" VARCHAR(50) NOT NULL,
"Название" VARCHAR(50) NOT NULL,
"Годы выпуска" VARCHAR(50) NOT NULL,
CONSTRAINT "K1" PRIMARY KEY ("Код журнала")
);
CREATE TABLE "Выпуски журналов"(
"Код выпуска" INTEGER NOT NULL,
"Тема" VARCHAR(50) NOT NULL,
"Код журнала" INTEGER NOT NULL,
CONSTRAINT "K2" PRIMARY KEY ("Код выпуска"),
CONSTRAINT "С1" FOREIGN KEY ("Код журнала")
REFERENCES "Научные журналы" ("Код журнала")
);
CREATE TABLE "Область науки"(
"Наименование области науки" VARCHAR(50) NOT NULL,
CONSTRAINT "K3" PRIMARY KEY ("Наименование области науки")
);
CREATE TABLE "Разделы"(
"Номер раздела" INTEGER NOT NULL,
"Название" VARCHAR(50) NOT NULL,
"Наименование области науки" VARCHAR(50) NOT NULL,
CONSTRAINT "K4" PRIMARY KEY ("Номер раздела"),
CONSTRAINT "С7" FOREIGN KEY ("Наименование области науки")
REFERENCES "Область науки" ("Наименование области науки")
);
CREATE TABLE "Авторы"(
"Код автора" INTEGER NOT NULL,
"Профессия" VARCHAR(50) NOT NULL,
"ФИО" VARCHAR(50) NOT NULL,
CONSTRAINT "K5" PRIMARY KEY ("Код автора")
);
CREATE TABLE "Выпуски журналов & разделы"(
"Код выпуска" INTEGER NOT NULL,
"Номер раздела" INTEGER NOT NULL,
CONSTRAINT "K9" PRIMARY KEY ("Код выпуска", "Номер раздела"),
CONSTRAINT "C4" FOREIGN KEY ("Код выпуска")
REFERENCES "Выпуски журналов" ("Код выпуска"),
CONSTRAINT "C10" FOREIGN KEY ("Номер раздела")
REFERENCES "Разделы" ("Номер раздела")
);
CREATE TABLE "Статьи"(
"Код статьи" INTEGER NOT NULL,
"Заголовок" VARCHAR(50) NOT NULL,
"Номер раздела" INTEGER NOT NULL,
"Код выпуска" INTEGER NOT NULL,
CONSTRAINT "K6" PRIMARY KEY ("Код статьи"),
CONSTRAINT "С5" FOREIGN KEY ("Номер раздела", "Код выпуска")
REFERENCES "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела")
);
CREATE TABLE "Научные журналы & Области науки"(
"Код журнала" INTEGER NOT NULL,
"Наименование области науки" VARCHAR(50) NOT NULL,
CONSTRAINT "K7" PRIMARY KEY ("Код журнала", "Наименование области науки"),
CONSTRAINT "С3" FOREIGN KEY ("Код журнала")
REFERENCES "Научные журналы" ("Код журнала"),
CONSTRAINT "С2" FOREIGN KEY ("Наименование области науки")
REFERENCES "Область науки" ("Наименование области науки")
);
CREATE TABLE "Авторы и статьи"(
"Код статьи" INTEGER NOT NULL,
"Код автора" INTEGER NOT NULL,
CONSTRAINT "K8" PRIMARY KEY ("Код статьи", "Код автора"),
CONSTRAINT "С6" FOREIGN KEY ("Код статьи")
REFERENCES "Статьи" ("Код статьи"),
CONSTRAINT "С8" FOREIGN KEY ("Код автора")
REFERENCES "Авторы" ("Код автора")
);    
INSERT INTO "Научные журналы" ("Код журнала", "Название", "Издательство", "Годы выпуска") VALUES ('01', 'Наука', 'Пушкина', '2007')
INSERT INTO "Научные журналы" ("Код журнала", "Название", "Издательство", "Годы выпуска") VALUES ('02', 'Почти наука', 'Гоголя', '2000')
INSERT INTO "Научные журналы" ("Код журнала", "Название", "Издательство", "Годы выпуска") VALUES ('03', 'Не наука', 'Ломоносова', '1999')
 
INSERT INTO "Выпуски журналов" ("Код выпуска", "Тема", "Код журнала") VALUES ('10', 'Земля', '01')
INSERT INTO "Выпуски журналов" ("Код выпуска", "Тема", "Код журнала") VALUES ('11', 'Вода', '01')
INSERT INTO "Выпуски журналов" ("Код выпуска", "Тема", "Код журнала") VALUES ('12', 'Огонь', '03')
INSERT INTO "Выпуски журналов" ("Код выпуска", "Тема", "Код журнала") VALUES ('13', 'Воздух', '02')
 
INSERT INTO "Область науки" ("Наименование области науки") VALUES ('Химия')
INSERT INTO "Область науки" ("Наименование области науки") VALUES ('Физика')
INSERT INTO "Область науки" ("Наименование области науки") VALUES ('Математика')
INSERT INTO "Область науки" ("Наименование области науки") VALUES ('Алгебра')
 
INSERT INTO "Разделы" ("Номер раздела", "Название", "Наименование области науки") VALUES ('101', 'Анекдоты', 'Химия')
INSERT INTO "Разделы" ("Номер раздела", "Название", "Наименование области науки") VALUES ('102', 'Наука', 'Алгебра')
INSERT INTO "Разделы" ("Номер раздела", "Название", "Наименование области науки") VALUES ('103', 'Объявления', 'Физика')
 
INSERT INTO "Авторы" ("Код автора", "Профессия", "ФИО") VALUES ('201', 'Охранник', 'Ласс Вадим Антонович')
INSERT INTO "Авторы" ("Код автора", "Профессия", "ФИО") VALUES ('202', 'Учитель', 'Моптевич Елена Владимировна')
INSERT INTO "Авторы" ("Код автора", "Профессия", "ФИО") VALUES ('203', 'Слесарь', 'Мотин Андрей Сергеевич')
INSERT INTO "Авторы" ("Код автора", "Профессия", "ФИО") VALUES ('204', 'Сантехник', 'Буров Виктор Иванович')
 
INSERT INTO "Статьи" ("Код статьи", "Заголовок", "Номер раздела", "Код выпуска") VALUES ('315', 'Охранник спасает сантехника', '101', '11')
INSERT INTO "Статьи" ("Код статьи", "Заголовок", "Номер раздела", "Код выпуска") VALUES ('316', 'Учитель убегает от слесаря', '103', '12')
INSERT INTO "Статьи" ("Код статьи", "Заголовок", "Номер раздела", "Код выпуска") VALUES ('317', 'Охранник и сантехник спасают планету', '102', '10')
 
INSERT INTO "Авторы и статьи" ("Код Статьи", "Код автора") VALUES ('315', '201')
INSERT INTO "Авторы и статьи" ("Код Статьи", "Код автора") VALUES ('316', '202')
INSERT INTO "Авторы и статьи" ("Код Статьи", "Код автора") VALUES ('316', '203')
INSERT INTO "Авторы и статьи" ("Код Статьи", "Код автора") VALUES ('317', '201')
INSERT INTO "Авторы и статьи" ("Код Статьи", "Код автора") VALUES ('317', '204')
 
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('01', 'Химия')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('01', 'Математика')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('01', 'Физика')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('02', 'Алгебра')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('02', 'Физкультура')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('03', 'История')
 
INSERT INTO "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела") VALUES ('10', '101')
INSERT INTO "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела") VALUES ('10', '102')
INSERT INTO "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела") VALUES ('11', '101')
INSERT INTO "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела") VALUES ('12', '102')
INSERT INTO "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела") VALUES ('13', '103')
Миниатюры
Не заполняются данные в таблицу  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.12.2017, 06:31
Ответы с готовыми решениями:

Не заполняются данные в php файле
Добрый вечер. Такая проблема, я отправляю данные к .php файлу при помощи ajax-запроса и принимаю на стороне php файла следующим кодом: ...

Не заполняются вычисляемые данные из запроса в dataGridView
Приветствую ,данные вычисляемые данные не заносятся в таблицу. Заполняю грид таким способом. string strProvider =...

в MySQL заносятся данные только когда заполняются все поля
в MySQL заносятся данные только когда заполнены все поля. а как сделать, чтобы можно было заполнять не все поля? например два заполнить, а...

5
85 / 67 / 25
Регистрация: 09.10.2017
Сообщений: 208
07.12.2017, 17:46
Здравствуйте!

Вероятно, нужно сначала выполнить вставку в таблицу "Выпуски журналов & разделы",
а Вы сначала пытаетесь выполнить вставку в таблицу "Статьи"
0
0 / 0 / 0
Регистрация: 03.02.2014
Сообщений: 103
08.12.2017, 08:06  [ТС]
Уже делал так
0
85 / 67 / 25
Регистрация: 09.10.2017
Сообщений: 208
08.12.2017, 09:20
Здравствуйте!

Вы используете Oracle?

Попробуйте по одной таблице создавать и заполнять данными.

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

В остальном ошибок нет.

Сначала "Выпуски журналов & разделы", затем "Статьи", затем "Научные журналы & Области науки", затем "Авторы и статьи".

Последовательность вставки значений в таблицы у Вас нарушена дважды.
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
08.12.2017, 09:45
Цитата Сообщение от TinSemenova
Вы используете Oracle?
Это не Oracle.
В Oracle как минимум нет конструкции DROP TABLE tab1 IF EXISTS.
Кроме того, не поощряются типы integer (обычно используется number) и varchar (используется varchar2).

Цитата Сообщение от TinSemenova
для русских названий таблиц и столбцов пишет что слишком длинное название
Русские названия допустимы, хотя обычно не используются. Названия из нескольких слов допустимы, но их все время приходится писать в двойных кавычках, поэтому обычно тоже не используются, проще слова соединять символом подчеркивание. По поводу слишком длинных наименований - в Oracle макс. длина имени объекта (таблицы, колонки и проч.) - 30 символов.
0
85 / 67 / 25
Регистрация: 09.10.2017
Сообщений: 208
08.12.2017, 11:00
Лучший ответ Сообщение было отмечено TaAccTikk как решение

Решение

Здравствуйте!

Ошибка найдена:

"Внешний ключ и родительский ключ, на который он ссылается, должны иметь одинаковый номер и тип поля, и находиться в одинаковом порядке."

У Вас PRIMARY KEY ("Код выпуска", "Номер раздела") таблицы TABLE "Выпуски журналов & разделы"
SQL
1
2
3
4
5
6
7
8
9
CREATE TABLE "Выпуски журналов & разделы"(
"Код выпуска" INTEGER NOT NULL,
"Номер раздела" INTEGER NOT NULL,
CONSTRAINT "K9" PRIMARY KEY ("Код выпуска", "Номер раздела"),
CONSTRAINT "C4" FOREIGN KEY ("Код выпуска")
REFERENCES "Выпуски журналов" ("Код выпуска"),
CONSTRAINT "C10" FOREIGN KEY ("Номер раздела")
REFERENCES "Разделы" ("Номер раздела")
);
а в таблице "Статьи" наоборот FOREIGN KEY ("Номер раздела", "Код выпуска")
SQL
1
2
3
4
5
6
7
8
9
CREATE TABLE "Статьи"(
"Код статьи" INTEGER NOT NULL,
"Заголовок" VARCHAR(50) NOT NULL,
"Номер раздела" INTEGER NOT NULL,
"Код выпуска" INTEGER NOT NULL,
CONSTRAINT "K6" PRIMARY KEY ("Код статьи"),
CONSTRAINT "С5" FOREIGN KEY ("Номер раздела", "Код выпуска")
REFERENCES "Выпуски журналов & разделы" ("Код выпуска", "Номер раздела")
);
дополнительно "код выпуска" и "номер раздела" таблицы "статьи" не совпадают с "код выпуска" и "номер раздела" таблицы "Выпуски журналов & разделы"
SQL
1
"Номер раздела", "Код выпуска") VALUES ('316', 'Учитель убегает от слесаря', '103', '12')
SQL
1
VALUES ('12', '102')
и
SQL
1
VALUES ('13', '103')
дополнительно "Физкультуры у Вас нет в базе
SQL
1
INSERT INTO "Нау жур Обл нау" ("Код журнала", "Наим обл науки") VALUES ('02', 'Физкультура')
Добавлено через 10 минут
дополнено

"Физкультура" и "История" нет в базе

SQL
1
2
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('02', 'Физкультура')
INSERT INTO "Научные журналы & Области науки" ("Код журнала", "Наименование области науки") VALUES ('03', 'История')
Добавлено через 5 минут
таблица "Авторы и статьи"

у Вас PRIMARY KEY ("Код статьи", "Код автора") составной ключ - вероятно его нельзя разделить, чтобы указать два внешних ключа на разные таблицы

SQL
1
2
3
4
5
6
7
8
9
CREATE TABLE "Авторы и статьи"(
"Код статьи" INTEGER NOT NULL,
"Код автора" INTEGER NOT NULL,
CONSTRAINT "K8" PRIMARY KEY ("Код статьи", "Код автора"),
CONSTRAINT "С6" FOREIGN KEY ("Код статьи")
REFERENCES "Статьи" ("Код статьи"),
CONSTRAINT "С8" FOREIGN KEY ("Код автора")
REFERENCES "Авторы" ("Код автора")
);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.12.2017, 11:00
Помогаю со студенческими работами здесь

При переносе данных из datagridview в Excel, ячейки, в которые не влезают данные, заполняются решетками. Как исправить?
Всем добрый день. Из заголовка, мне кажется, всё и так понятно. Как можно это по-другому оформить? И да, может кто объяснить по примеру,...

Делфи 7: при попытке заполнить таблицу кодовыми символами ПЭВМ ячейки заполняются буквами "я"
procedure TForm1.N1Click(Sender: TObject); // Заполнение таблицы кодовыми символами ПЭВМ var ch: char; m: integer; i, j:...

Помогите написать программу, которая вводит фактические данные в таблицу, и выводит на экран таблицу
Помогите написать программу, которая вводит фактические данные в таблицу, и выводит на экран таблицу. Офісні пакети ...

В form1 открыть таблицу Excel, куда вносить данные, а в form2 - таблицу с уже рассчитанными показателями
Всем доброго времени суток. Имеется файл екселя в котором есть таблицы в которые заносятся данные и таблицы в которых считаются...

Сохранить из формы данные в таблицу, при том чтобы данные добавлялись а не заменялись
Здравствуйте. Нужно сохранить из формы данные в таблицу при том чтобы данные добавлялись а не заменялись)) и еще одна проблемка не знаю как...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru