Coder Social home page Coder Social logo

database_se's Introduction

Базы данных

Программная инженерия

Лекции

Презентации

Лабораторные

1 - Инфологическая и даталогическая модели, их реализация в PostgreSQL

2 - Запросы к базе данных "Учебный процесс"

3 - Функциональные зависимости и NF

4 - Планы выполнения запросов

Как работать с БД?

  1. Скачиваем и устанавливаем DataGrip
  2. Создаем или открываем проект
  3. Слева нажимаем +, затем Data Source - PostgreSQL

image

  1. Нажимаем Download внизу, если требуется, и вводим данные:
  • User: sXXXXXX
  • Password: пароль из файла .pgpass (чтобы его получить подключитесь к гелиосу и пропишите cat .pgpass, там будет "*:*:*:sXXXXXX:пароль")
  • Database: studs (или ucheb, смотря какая вам нужна для лабы)

image

  1. Идем в раздел SSH/SSL, ставим галочку, где Use SSH tunnel и нажимаем на три точки справа

image

  1. Здесь нажимаем +, далее повторяем настройки:
  • Host: se.ifmo.ru
  • Port: 2222
  • Username sXXXXXX (XXXXXX - ИСУ)
  • Password: пароль с se.ifmo

image

  1. Нажмите Test Connection, если все верно, то вам выведется сообщение об успехе, нажимаем Apply и OK

image

  1. Возвращаемся на вкладку General, снизу тоже нажимаем Test Connection, должно появиться сообщение об успехе, если так, то нажимаем Apply

image

Теперь мы можем выполнять запросы

  1. Откройте консоль, нажав ПКМ по studs (или ucheb), далее New - Query Console

image

Сюда мы можем писать свои запросы, чтобы они выполнялись

  1. Тестируем на простых запросах studs
CREATE TABLE test (
    id BIGSERIAL PRIMARY KEY,
    description TEXT NOT NULL UNIQUE
);

INSERT INTO test (description) VALUES
    ('test1'),
    ('test2');

SELECT * FROM test;

Чтобы выполнить запрос, переведите курсор на текст запроса (нажмите на него, должна появиться зеленая рамочка вокруг), а затем сверху нажмите на значок Execute (зеленый треугольник, Play), появится меню, где вы можете выбрать: выполнить только запрос в зеленой рамочке или все запросы в консоли

image

После выполнения запросов снизу появится результат:

image

* Чтобы удалить таблицу, можно прописать в консоли:

DROP TABLE test;

Или выбрать слева соответствующий пункт:

image

  1. Тестируем на простом запросе ucheb (можно просто поменять название БД в 4 пункте, также необходимо открыть новую консоль)
SELECT * FROM "Н_ЛЮДИ";

image

Успех!

Как работать с БД на Helios?

Если вам по каким-то причинами удобнее работать на гелиосе, а не по методу описанному выше, то давайте разберемся

  1. Для начала создайте новый файл, у меня test.sql и наполните его каким-нибудь содержимым (или создайте новый файл прямо на гелиосе, переходите сразу к пункту 3). Например:
CREATE TABLE test (
    id BIGSERIAL PRIMARY KEY,
    description TEXT NOT NULL UNIQUE
);

INSERT INTO test (description) VALUES
    ('test1'),
    ('test2');

SELECT * FROM test;

Закиньте файл с запросом на Helios, находясь в директории, где он лежит

scp -P 2222 test.sql [email protected]:~/
  1. Поключитель к Helios
ssh [email protected] -p 2222
  1. Создайте файл с запросом (если вы решили не выполнять 1-2 пункты, иначе пропустите этот пункт)
  • Создайте новый файл:
touch test.sql
  • Откройте редактор:
vi test.sql
  • Впишите сюда содержимое запроса, например, из 1 пункта (чтобы начать писать в виме, нажмите клавишу i)
  • Чтобы сохранить файл и выйти из редактора, надо нажать Esc и набрать :wq (иногда требуется поставить ! в конце), Enter. Если вы хотите выйти без сохранения наберите :q!

image

  1. Пропишите
psql -h pg -d studs

или

psql -h pg -d ucheb

Смотря какая лаба

  1. Основные команды:
  • \i test.sql - выполнить запросы из файла
  • \d - посмотреть все существующие таблицы и тд.
  • \h - посмотреть справку по SQL операторам
  • \? - посмотреть справку по другим командам
  • \q - выйти из psql

image

database_se's People

Contributors

candygoose avatar

Stargazers

Zont12 avatar

Watchers

 avatar

Forkers

havintemli

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.