Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 15.10.2021
Сообщений: 2
1

Closur Table добавление ноды

15.10.2021, 23:36. Показов 533. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Приветствую.

Пытаюсь добавить ноду в Closur Table по примеру https://habr.com/ru/post/537062/ 2.6. Добавление узла в дерево

Для теста сделал вот такую иерархию в базу данных:

Код
Электроника - 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
ну и сама база

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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
-- phpMyAdmin SQL Dump
-- version 5.1.0
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Generation Time: Oct 15, 2021 at 08:29 PM
-- Server version: 8.0.25
-- PHP Version: 8.0.3
 
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
 
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
 
--
-- Database: `closure`
--
 
-- --------------------------------------------------------
 
--
-- Table structure for table `category_name`
--
 
CREATE TABLE `category_name` (
  `id` BIGINT NOT NULL,
  `name` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_ru_0900_ai_ci DEFAULT NULL,
  `level` INT DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_ru_0900_ai_ci;
 
--
-- Dumping data for table `category_name`
--
 
INSERT INTO `category_name` (`id`, `name`, `level`) VALUES
(1, 'Электроника', 0),
(2, 'Телевизоры', 0),
(3, 'Сенсорные', 0),
(4, 'С подсветкой', 0),
(5, 'На колёсиках', 0),
(6, 'Антибликовые', 0),
(7, 'Супертонкий', 0),
(8, 'Настенный', 0),
(9, 'Телефон', 0),
(10, 'Ракушка', 0),
(11, 'Кнопочный', 0),
(12, 'Сенсорный', 0),
(13, 'Выдвижной', 0),
(14, 'Автоматический', 0),
(15, 'Ручной', 0),
(16, 'Для дома', 0),
(17, 'Для ванной', 0),
(18, 'Коврик', 0),
(19, 'С животными', 0),
(20, 'Обструкция', 0),
(21, 'Мыльница', 0),
(22, 'С отверстиями', 0),
(23, 'Прозрачные', 0),
(24, 'Для кухни', 0),
(25, 'Сковородки', 0),
(26, 'С ручками', 0),
(27, 'Антипригарные', 0),
(28, 'кастрюли', 0),
(29, 'Паровые', 0),
(30, 'С крышками', 0),
(31, 'Test', 0);
 
-- --------------------------------------------------------
 
--
-- Table structure for table `tree_path`
--
 
CREATE TABLE `tree_path` (
  `children` BIGINT NOT NULL,
  `parent` BIGINT NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_ru_0900_ai_ci;
 
--
-- Dumping data for table `tree_path`
--
 
INSERT INTO `tree_path` (`children`, `parent`) VALUES
(1, 1),
(2, 1),
(3, 1),
(4, 1),
(5, 1),
(6, 1),
(7, 1),
(8, 1),
(9, 1),
(10, 1),
(11, 1),
(12, 1),
(13, 1),
(14, 1),
(15, 1),
(2, 2),
(3, 2),
(4, 2),
(5, 2),
(6, 2),
(7, 2),
(8, 2),
(3, 3),
(4, 3),
(5, 3),
(4, 4),
(5, 5),
(6, 6),
(7, 6),
(8, 6),
(7, 7),
(8, 8),
(9, 9),
(10, 9),
(11, 9),
(12, 9),
(13, 9),
(14, 9),
(15, 9),
(10, 10),
(11, 10),
(12, 10),
(11, 11),
(12, 12),
(13, 13),
(14, 13),
(15, 13),
(14, 14),
(15, 15),
(16, 16),
(17, 16),
(18, 16),
(19, 16),
(20, 16),
(21, 16),
(22, 16),
(23, 16),
(24, 16),
(25, 16),
(26, 16),
(27, 16),
(28, 16),
(29, 16),
(30, 16),
(17, 17),
(18, 17),
(19, 17),
(20, 17),
(21, 17),
(22, 17),
(23, 17),
(18, 18),
(19, 18),
(20, 18),
(19, 19),
(20, 20),
(21, 21),
(22, 21),
(23, 21),
(22, 22),
(23, 23),
(24, 24),
(25, 24),
(26, 24),
(27, 24),
(28, 24),
(29, 24),
(30, 24),
(25, 25),
(26, 25),
(27, 25),
(26, 26),
(27, 27),
(28, 28),
(29, 28),
(30, 28),
(29, 29),
(30, 30);
 
--
-- Indexes for dumped tables
--
 
--
-- Indexes for table `category_name`
--
ALTER TABLE `category_name`
  ADD PRIMARY KEY (`id`);
 
--
-- Indexes for table `tree_path`
--
ALTER TABLE `tree_path`
  ADD PRIMARY KEY (`children`,`parent`),
  ADD KEY `FK_PARENT` (`parent`);
 
--
-- AUTO_INCREMENT for dumped tables
--
 
--
-- AUTO_INCREMENT for table `category_name`
--
ALTER TABLE `category_name`
  MODIFY `id` BIGINT NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=33;
 
--
-- Constraints for dumped tables
--
 
--
-- Constraints for table `tree_path`
--
ALTER TABLE `tree_path`
  ADD CONSTRAINT `FK_CHILDREN` FOREIGN KEY (`children`) REFERENCES `category_name` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `FK_PARENT` FOREIGN KEY (`parent`) REFERENCES `category_name` (`id`) ON DELETE CASCADE;
COMMIT;
 
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Далее я делаю вот такой запрос:

SQL
1
INSERT INTO tree_path(parent, children) SELECT a.parent, d.children FROM (SELECT parent FROM tree_Path WHERE children=28) a, (SELECT children FROM tree_path WHERE parent=31) d;

В ответ я получаю вот такой ответ:

SQL
1
Records: 0  Duplicates: 0  Warnings: 0
Что я делаю не так не понимаю. Объясните пожалуйста?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2021, 23:36
Ответы с готовыми решениями:

Добавление второго ключа в таблицу с ALTER TABLE
Подскажите пожалуйста, как добавить поле со вторым ключём в уже созданную таблицу с помощью ALTER...

Определение ноды выбранной после падения активной ноды кластера
Предположим есть 3 ноды, активная нода падает, какая из двух будет выбрана активной?

Добавление Table View
Здравствуйте,как сделать чтобы при нажатии кнопки высвечивался view,в этом view пользователь...

Добавление строк в Table
Нигде не могу найти, подскажите как добавлять строки в коллекцию Table, причём именно Table а не...

Добавление строки <TABLE>
Здравствуйте. У меня такая вот проблема : при нажатии на кнопке в случае существования записи в...

2
68 / 60 / 18
Регистрация: 03.12.2010
Сообщений: 365
19.10.2021, 14:12 2
Цитата Сообщение от romget Посмотреть сообщение
Далее я делаю вот такой запрос:
Не совсем понятный запрос. Точно такой запрос нужно выполнить?
Что вы хотите добиться запросом? Опишите вывод запроса.
0
1177 / 419 / 106
Регистрация: 31.03.2012
Сообщений: 1,145
21.10.2021, 10:44 3
Цитата Сообщение от romget Посмотреть сообщение
MySQL
1
select children from tree_path where parent = 31
Возвращает пустой набор. На приведенных тобой данных такого значения (31) в таблице tree_path нет . И соответственно декартовое произведение будет пустое. а значит и вставлять нечего. Так, что все правильно
Код
Records: 0 Duplicates: 0 Warnings: 0
0
21.10.2021, 10:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2021, 10:44
Помогаю со студенческими работами здесь

Добавление из Table и TextBox в базу с одной формы
Всем привет! Вопрос такой, как добавить в базу данных, инфу из текстбоксов и таблицы...

Как происходит добавление и удаление строк для типа данных table?
Здравствуйте, как происходит добавление и удаление строк для типа данных table в матлабе? ...

Как можно в <table id="tb1 </table> вписать w ??
У меня есть &lt;textarea id=&quot;t1 какой то текст &lt;/textarea&gt; Далее...

select s odnoi table, and insert v drygyjy table
privet! mne nado sdelat backup s ASP.NET, kogda stirayt DB, no na vsaki slychay mne nado soxranit...

Получение значения из определенной ячейки <table></table>
Помогите новичку получить значения из таблицы в richTextBox Получаю таблицу со страницы html вот...

Как правильно сделать построчное чтение txt файла, чтобы потом эти данные выводились в теге <table></table>?
У меня есть файл file.txt: Саша 12 руб. Рома 76 руб. Петя 120 руб. Маша 234 руб. Я пытаюсь...


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

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