Найти в Дзене
Покупайте СтеллыИ дарите их за контент
3 недели назад
 • Вы подписаны

Первичные ключи в SQL

Ранее мы обсуждали, что в каждой таблице нужен столбец с идентификатором, чтобы можно было различать строки между собой. Столбец или набор столбцов, используемых для различения строк между собой, и называется первичным ключом (Primary Key). То есть, почти всегда первичный ключ - это колонка id. Но бывают и сложные случаи. Например, в таблице оценок ограничение уникальности (предмет, ученик, дата урока) можно было бы сделать первичным ключом, а колонку id убрать. Однако на практике лучше всегда делать дополнительный столбец id, чтобы во всех таблицах было единообразие...

4 недели назад
 • Вы подписаны

Изменение таблиц на SQL

Для создания таблиц мы использовали команду "CREATE TABLE": CREATE TABLE имя_схемы.имя_таблицы ( колонка1 тип_данных1, колонка2 тип_данных2, ... ); Для удаления таблиц есть команда "DROP TABLE": DROP TABLE имя_схемы.имя_таблицы; А для изменения таблицы есть команда "ALTER TABLE". Её сейчас и рассмотрим. ALTER TABLE имя_схемы.имя_таблицы ADD COLUMN имя_новой_колонки тип_данных; Например, добавим в таблицу education.students2 колонку "new_column", которая может хранить текст...

1 месяц назад
 • Вы подписаны

Нормализация баз данных - Изучаем SQL на примере Postgres

Итак, мы научились создавать и изменять таблицы. Однако в реальных базах данных, где десятки таблиц, не всё так просто. Нужно уметь правильно спроектировать архитектуру - какие будут таблицы, какие колонки в каждой из них и какие будут связи между таблицами. Рассмотрим таблицу оценок: Здесь первичным ключом является комбинация (предмет, студент, дата занятия). За одно занятие один студент может получить несколько оценок, поэтому колонка "values" ("значения") имеет тип smallint[] (массив из маленьких целых чисел)...

1 месяц назад
 • Вы подписаны

Ограничения в SQL. Ограничение уникальности

Допустим, у нас есть таблица учеников. Пусть мы хотим добавить к ней столбец "email" с электронной почтой. Этот столбец всегда должен иметь значение, то есть, должен быть NOT NULL. Однако здесь можно добавить ещё одно ограничение - у каждого ученика своя уникальная почта, то есть, значение в колонке почты не может повторяться. Такое ограничение называется ограничением уникальности (UNIQUE). Мы ещё это не изучали, но ограничения бывают разными: уникальности UNIQUE, первичного ключа PRIMARY KEY, внешнего...

1 месяц назад
 • Вы подписаны

Идентификаторы в таблицах SQL - на примере Postgres

Строки в таблицах баз данных не упорядочены, то есть, нет первой и второй строк. Например, если мы отредактируем первую строку в таблице и сохраним изменения, то она может оказаться последней: Итак, строки не упорядочены. Теперь представим обычную ситуацию: приложение на другом языке программирования, например, на C#, использует нашу базу данных. Пользователь открыл в приложении определённую строку, отредактировал её и хочет сохранить изменения. Но, так как строки не упорядочены, то при сохранении изменений приложение не может сказать базе данных: "отредактируй строку номер такую-то"...

1 месяц назад
 • Вы подписаны

Как выполнять SQL-запросы в IntelliJ IDEA / PyCharm / Rider

По своей природе, Postgres, MS SQL Server и прочие СУБД - это сервера, которые получают SQL-команды от клиентских приложений. SQL - это текст, то есть, команды SQL состоят из определённого текста. Можно набирать этот текст в консольном приложении psql, поставляющемся вместе с Postgres. Но писать и редактировать сложные команды в консоли неудобно. В IntelliJ IDEA / PyCharm / Rider есть специальные консоли базы данных. В отличие от командной строки, консоли здесь - это обычные текстовые файлы, в которых можно набирать код SQL и произвольным образом выполнять его...

Покупайте СтеллыИ дарите их за контент