JujaLabs / sqlcmd

0 stars 5 forks source link

PostgreSQL - подключение, выполнение запросов. #20

Closed danilkuznetsov closed 6 years ago

danilkuznetsov commented 6 years ago

Установить и настроить локальный сервер PostgreSQL 9.6, организовать подключение к серверу из Java

  1. Настройка локального сервера PostgreSQL 9.6 1.1 Download PostgreSQL 9.6 1.2 Настраиваем пользователя: sqlcmd/sqlcmd 1.3 Создаем базу данных sqlcmd

    Полезные линки по теме PostgreSQL 9.6 Admin Docs PostgreSQL 9.6 General Docs

  2. Добавить в maven зависимость на PostgreSQL JDBC driver

  3. Создать в классе Application метод simpleSQL(); 3.1 Метод должен подключится к базе данных sqlcmd. (логин и пароль из пункта 1.1 ) 3.2 Вывести в консоль список всех таблиц в базе данных. Каждое имя таблицы с новой строки. Если база данных не содержит таблицы вывести db is empty 3.3 Создать таблицу user Поля id: numeric (auto increment), name: string, password: string 3.4 Вывести в консоль список всех таблиц в базе данных. Каждое имя таблицы с новой строки. Если база данных не содержит таблицы вывести db is empty 3.5 Добавить в таблицу user информацию о трех пользователях:

     user1 password1
     user2 password2
     user3 password3

    3.6 Вывести информацию из таблицы в консоль в формате id | name | password 3.7 Для пользователя с name = user2 изменить имя на userсhange1 3.8 Вывести информацию из таблицы в консоль в формате id | name | password 3.9 Удалить пользователя с name = user3 3.10 Вывести информацию из таблицы в консоль в формате id | name | password

Docs SQL Key word Words PostgreSQL 9.6 Key word issue

  1. Для функциональности из пункта три написать тесты в классе ApplicationTest При тестирование нужно перехватить и проверить вывод в консоль. Для этого есть пример:

private final ByteArrayOutputStream outContent = new ByteArrayOutputStream();
private final ByteArrayOutputStream errContent = new ByteArrayOutputStream();

private final PrintStream originalOut;
private final PrintStream originalErr;

@Before
public void setUpStreams() {
    originalOut=System.out;
    originalErr=System.err;
    System.setOut(new PrintStream(outContent));
    System.setErr(new PrintStream(errContent));
}

@After
public void cleanUpStreams() {
    System.setOut(originalOut);
    System.setErr(originalErr);
}

@Test
public void out() {
    System.out.print("hello");
    assertEquals("hello", outContent.toString());
}