Учебное пособие Санкт-Петербург «бхв-петербург»


CREATE TABLE my_schema.airports



Pdf көрінісі
бет105/256
Дата18.11.2022
өлшемі1.88 Mb.
#465124
түріУчебное пособие
1   ...   101   102   103   104   105   106   107   108   ...   256
sql osnovi yazika

CREATE TABLE my_schema.airports
...
Контрольные вопросы и задания
1. При использовании значений по умолчанию с ключевым словом DEFAULT воз-
можны и ситуации, когда типичным будет не конкретное значение данных,
а способ его получения. Например, если мы захотим фиксировать в каждой
строке таблицы «Студенты» имя пользователя базы данных, добавившего эту
строку в таблицу, тогда необходимо в определение таблицы добавить еще один
133


Глава 5. Основы языка определения данных
столбец. Этот столбец по умолчанию будет получать значение, возвращаемое
функцией current_user.
CREATE TABLE students
( record_book numeric( 5 ) NOT NULL,
name text NOT NULL,
doc_ser numeric( 4 ),
doc_num numeric( 6 ),
who_adds_row text DEFAULT current_user, -- добавленный столбец
PRIMARY KEY ( record_book )
);
Эта функция — current_user — будет вызываться не при создании таблицы,
а при вставке каждой строки. При этом в команде INSERT не требуется указы-
вать значение для столбца who_adds_row, поскольку функция current_user
будет вызываться самой СУБД PostgreSQL:
INSERT INTO students ( record_book, name, doc_ser, doc_num )
VALUES ( 12300, 'Иванов Иван Иванович', 0402, 543281 );
Давайте пойдем дальше и пожелаем фиксировать не только имя пользователя
базы данных, добавившего строку в таблицу, но также и момент времени, когда
это было сделано. Самостоятельно внесите модификацию в определение табли-
цы students для решения этой задачи, а затем выполните команду INSERT для
проверки полученного решения.
Если до выполнения этого упражнения вы еще не ознакомились с командой
ALTER TABLE, то вместо модифицирования определения таблицы сначала уда-
лите ее, а затем создайте заново:


Достарыңызбен бөлісу:
1   ...   101   102   103   104   105   106   107   108   ...   256




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет