* Вмъкване на данни
Публикувано на 15 февруари 2009 в раздел Бази от Данни.
След като вече знаем как се създава база от данни е време да научим как се вмъква информация в нея. За целта съществува команда “INSERT INTO”. Нека вкараме имената на два университета в таблица “university” от база от данни “university”:
INSERT INTO `university`.`university` (`id` , `name` , `founded`) VALUES ( NULL , 'Sofia University', '1889-01-29' ); INSERT INTO `university`.`university` (`id` , `name` , `founded`) VALUES ( NULL , 'Techical University', '1941-06-12' );
Виждате, че на полета `id` зададохме стойност NULL, но ако прелистим базата ще видим, че то не е:
Това е така, поради дефиницията на полето `id` от таблица `university` – там бяхме посочили, че то е “auto_increment”:
Досещате се, че при добавяне на още един запис той ще получи id = 3. Поради тази причина такива колони се използват изключително често като уникален идентификатор и съответно първичен ключ.
Възможно е добавянето на повече от един ред с една INSERT заявка:
INSERT INTO `university`.`faculties` (`id` ,`name` ,`univ_id` ,`dekan_id`) VALUES ( NULL , 'Avtomatika', '2', NULL ), ( NULL , 'Elektronna Tehnika i Tehnologii', '2', NULL ), ( NULL , 'Elektrotehnicheski', '2', NULL ), ( NULL , 'Energo-mashinostroitelen', '2', NULL ), ( NULL , 'Kompiutarni sistemi i upravlenie', '2', NULL ), ( NULL , 'Mashino-tehnologichen', '2', NULL ); INSERT INTO `university`.`faculties` (`id` ,`name` ,`univ_id` ,`dekan_id` ) VALUES ( NULL , 'Biologicheski', '1', NULL ), ( NULL , 'Himicheski', '1', NULL ), ( NULL , 'Matematika i informatika', '1', NULL ), ( NULL , 'Istoricheski', '1', NULL ), ( NULL , 'Fizicheski', '1', NULL );
Нека видим как са се записали в таблицата:
Аналогично се добавят записи и в другите таблици.
Ето един примерен файл, чрез който ще бъде създадена базата от данни, добавени два университета, няколко техни факултета и техни преподаватели: university.sql
4 коментара за “Вмъкване на данни”
Trackback URI | RSS за коментарите
Пусни коментар
Категории
- Бази от Данни (52)
- Вероятности (31)
- История (15)
- Кучета (69)
- Лада Нива (96)
- Математика (166)
- Методика (53)
- Общи работи (110)
- ПИК-3 Java (38)
- Политика (41)
- Програмни Среди (1)
- ПТСК (41)
- С/C++ (45)
- Семейни (16)
- Физика (35)
- ХHTML/JS (25)
- Храна (11)
Нови
- Извеждане на няколко произволни реда
- Full-Text търсене с InnoDB в MySQL
- Късметче от кафе
- Пред блока…
- Бушонно табло на Лада Нива



24 януари 2011 на 20:48
Какво и е грешното в синтаксиса на тази заявка, че не я изпълнява?
INSERT INTO `firm`.`firms`(`id`,`name`),
VALUES (NULL, `borsa1`),
(NULL, `borsa2`),
(NULL, `borsa3`),
25 януари 2011 на 10:33
Низовите променливи се ограждат с ‘ кавички, а не с `. Апострофът (`) се използва за изброяване на имена на полета. Освен това заявката трябва да завършва с ;. Накрая след скобите на INSERT INTO няма запетайка. Т.е. заявката ти трябва да е:
INSERT INTO `firm`.`firms`(`id`,`name`)
VALUES (NULL, ‘borsa1′),
(NULL, ‘borsa2′),
(NULL, ‘borsa3′);
30 март 2012 на 22:07
След като 1 път съм въвел информация в таблица мога ли да е допълна, т.е. ако наприрмер в таблицата faculties съм въвел всичко без dekan_id мога ли след това да го въведа само това и как ?
30 март 2012 на 22:17
Георги – може, като се използва UPDATE заявка.