Базы данных SQL-DDL и SQL-DML. Изучение транзакций. Программирование на языке SQL. Консольное приложение (Цикл лабораторных работ). Вариант № 2, страница 18

            stmt = c.createStatement();

            try {

                final String query = "SELECT F_ID FROM FILM WHERE " +

                        "NAME = '" + Name +

                        "' AND YEAR_OF_CREATION = " + Year +

                        " AND DURATION = " + Duration +

                        " AND BUDGET = " + Budget ;

                final ResultSet rs = stmt.executeQuery(query);

                if (rs.next())

                    return rs.getInt("F_ID");

                else

                    return -1;

            } finally {

                stmt.close();

            }

        } finally {

            c.close();

        }

    }

     /**

     * Удаление фильма по значению первичного ключа

     * @param id    идентификатор фильма

     * @throws SQLException

     */

    public static void deleteFilm(final int id) throws SQLException {

        final Connection c = ConnectionParameters.getConnection();

        try {

            // Удаляем фильм из таблицы фильмов

            Statement stmt = c.createStatement();

            try {

                String query = "DELETE FROM FILM WHERE F_ID = " + id;

                stmt.executeUpdate(query);

            } finally {

                stmt.close();

            }

        } finally {

            c.close();

        }

    }

    /**

     * Удаление фильма по названию, году, длительности и бюджету

     * @param Name имя

     * @param Year год

     * @param Duration длительность

     * @param Budget бюджет

     * @throws SQLException

     */

    public static void deleteFilm( String Name, int Year, int Duration,int Budget)

            throws SQLException {

        final Connection c = ConnectionParameters.getConnection();

        try {

            int id;

            Statement stmt = c.createStatement();

            try {

                final String query =

                        "SELECT F_ID FROM FILM " +

                        "WHERE (NAME LIKE '" + Name +"%') AND " +

                        "(YEAR_OF_CREATION = "+ Year + ") AND " +

                        "(DURATION = "+ Duration + ") AND " +

                        "(BUDGET = " + Budget + ")";

                stmt.executeQuery(query);

                ResultSet rs = stmt.executeQuery(query);

                if (rs.next()) {

                    id = rs.getInt("F_ID");

                } else {

                    throw new SQLException("Не найден фильм с заданными параметрами:" +

                            Name + " " + Year + " " + Duration + " " + Budget);

                }

            } finally {

                stmt.close();

            }

            deleteFilm(id);

        } finally {

            c.close();

        }

    }

    /**

     * Получить средние рейтнги фильмов указанного года

     *

     * @param year  год

     * @param semestr   семестр

     * @return  коллекция рейтингов

     * @throws SQLException

     */

    public static Collection<AVGRating> getRatingOfFilms(final String year)

            throws SQLException {

        final Collection<AVGRating> results = new LinkedList<AVGRating>();