При копировании материалов, ссылка на источник ОБЯЗАТЕЛЬНА!!!

пятница, 12 октября 2012 г.

Добавление записей в таблицу с помощью SQL-запросов

В предыдущих постах мы научились с помощью SQL-запросов создавать, удалять и редактировать базу данных и ее таблицы. Данная же статья посвящена наполнению таблиц БД данными, то есть будем изучать SQL-команды для вставки новых записей. Следует сказать, что запись в таблицу можно сделать двумя способами:

Способ №1.
Попробуем внести запись о новой стране в таблицу countries. Синтаксис добавления будет следующим:
INSERT INTO имя_таблицы (поле_1, поле_2, …) VALUES (Значение_1, Значение_2, …);
Исходя из нашей структуры таблицы, SQL-запрос будет таким:
INSERT INTO countries (country_name, acronym_name) VALUES ('Russia', 'RU');
Вот так мы внесли в нашу таблицу запись о стране «Россия». Здесь должно быть все понятно и просто, главное внимательно смотреть какие поля указываете в первых скобках, и в таком же порядке прописывать значения во вторых.

Способ №2.
Второй способ, на мой взгляд, немного проще, поскольку вы видите что, и какому полю присваиваете. Поверьте, если в таблице огромное количество столбцов, то очень просто перепутать или недосмотреть порядок полей в первых, и порядок значений во вторых скобках. Синтаксис второго метода такой:
INSERT INTO имя_таблицы SET поле_1 = Значение_1, поле_2 = Значение_2, … ;
Давайте на данном примере внесем какую-нибудь информацию в табличку persons, поскольку там побольше полей, и сразу будет чувствоваться преимущество второго способа:
INSERT INTO persons SET first_name='Ivan', last_name='Dulin', registration_date='2012-06-14', country='1';
Теперь в нашей табличке есть такие данные:


Вы, наверное, заметили, что мы не указали значение для age, а оно оказалось заполненным... Все правильно – для данного поля мы устанавливали значение по умолчанию как 25. Так что теперь наш Ivan Dulin числиться в базе с возрастом 25 лет. Возможно, не самый удачный пример делать значение по умолчанию для поля возраста, но можно такие свойства устанавливать к таким полям, как, к примеру, рейтинг пользователя сайта, или количество просмотров страницы. Для них изначально ставится значение 0.

Следует еще обратить внимание на формат даты в MySQL: YYYY-MM-DD. Если его не придерживаться, то ваши записи просто не будут внесены в таблицу.

Как видим, поле profession заполнено как NULL, это пустое значение. Для данного поля мы задавали свойство «не обязательное к заполнению (NULL)».

Как дополнение, рассмотрим еще такую команду:
LOAD DATA LOCAL INFILE 'D:\zapros.txt' INTO TABLE persons;
Как вы думаете, что мы сейчас сделали?! А сделали мы следующее: добавили данные в таблицу persons из файла zapros.txt, который находится на диске D. Информация в файле должна быть следующей структуры:


Структура данных файла должна соответствовать таким требованиям:
  1. Каждая новая запись должна описываться с новой строчки
  2. Данные должны быть указаны для абсолютно всех полей. Как вы можете заметить, для поля id мы указали значение NULL, ведь оно у нас автоинкрементное, так что MySQL сам внесет нужное значение.
  3. Поля разделяются друг от друга символом табуляции (клавиша Tab).
  4. Введенная информация должна соответствовать типам данных конкретного поля. То есть, например, дата в формате ГГГГ-ММ-ДД, целое число для integer и т.д.
Таким образом, вы научились вносить новые данные в таблицы своей БД. Для закрепления изученного материала, внесите самостоятельно такие данные:

Таблица professions:
profession_name
developer
miller
teacher

Таблица countries:
country_name acronym_name
Ukraine UA
Belarus BL

Таблица persons:
first_name last_name age registration_date country profession
Leonid Bilak 45 2012-06-20 2 1
Yuri Nazarov 22 2012-06-21 3 1
Alla Savenko 25 2012-06-22 2 3
Irina Nikolaeva 31 2012-06-22 1 3

Обязательно добавьте эти записи, поскольку они нам понадобятся для изучения оператора SELECT (выбора информации с БД), который мы рассмотрим в следующей (четвертой) статье по изучению SQL-запросов.

1 комментарий:

  1. способ 2:
    INSERT INTO `news` (`id`, `title`, `text`) VALUES
    (1, 'В Петербурге уволили двоих вице-губернаторов', 'Вице-губернаторов Петербурга Бельского и Бондаренко освободили от должности\r\nЗдание Правительства в Санкт-Петербурге - РИА Новости, 1920, 24.09.2021\r\n© РИА Новости / Александр Гальперин\r\nПерейти в фотобанк\r\nЧитать ria.ru в\r\nС.-ПЕТЕРБУРГ, 24 сен — РИА Новости. Вице-губернаторов Санкт-Петербурга Александра Бельского и Николая Бондаренко освободили от должностей, сообщила пресс-служба администрации главы города.\r\nСоответствующие распоряжения подписал губернатор Александр Беглов.\r\nКроме того, свои посты покинули председатель городского комитета по социальной политике Александр Ржаненков, глава администрации Выборгского района Валерий Гарнец и глава администрации Приморского района Николай Цед.\r\nВ пресс-службе не назвали причины кадровых изменений.'),
    (2, 'Суд арестовал экс-вице-премьера Крыма', 'Суд арестовал экс-вице-премьера Крыма Кабанова, курировавшего ФЦП развития региона\r\nЕвгений Кабанов - РИА Новости, 1920, 24.09.2021\r\n© РИА Новости / Дмитрий Макеев\r\nЕвгений Кабанов. Архивное фото\r\nЧитать ria.ru в\r\nСИМФЕРОПОЛЬ, 24 сен — РИА Новости. Киевский районный суд Симферополя арестовал бывшего вице-премьера Крыма Евгения Кабанова по делу о хищении более 57 миллионов рублей, передает корреспондент РИА Новости.\r\nПо версии следствия, обвиняемый, вместе с бывшим министром строительства и архитектуры Крыма Михаилом Храмовым, а также генеральным директором компании \"Мастер-ЮГ\" Романом Журавлевым, украл эти деньги из бюджета.\r\n');

    ОтветитьУдалить