Средства доступа к данным

  • Вид работы:
    Практическое задание
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    393,04 Кб
  • Опубликовано:
    2014-09-16
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Средства доступа к данным

Московский государственный университет путей сообщения (МИИТ)

Кафедра «Автоматизированные системы управления»







Отчет

по лабораторной работе №2

на тему

«Средства доступа к данным»

по дисциплине «Корпоративные информационные системы»

Вариант 6


Выполнил ст.гр. УВА-411:

Иванов П.С.

Проверил:

Варфоломеев А.В.




Москва 2014

Постановка задачи

Разработать программу, обеспечивающую ввод и редактирование

информации об объектах в соответствии с заданной предметной областью.

Информация об объектах должна храниться в отдельной базе данных. Доступ к данным осуществляется с использованием средств JDBC или ODBC.

Вариант:

доступ данные информация


Исходный код программы

create database agenstvo;agenstvo;table kategor (id_kt integer not null, name char (32));table news (id_kt integer not null,id_nws integer not null, name char(150), red char(32), mesto char(32));into kategor values (1, 'Спорт');into kategor values (2, 'Политика');into kategor values (3, 'АВТО');

insert into news values (1,1,'Форвард «Зенита» Халк: В России с расизмом не сталкивался»','Чемпионат.com', 'Россия');into news values (1,2,'«Локомотив» - чемпион по тренерским отставкам','Чемпионат.com','РФПЛ');into news values (1,3,'5 выводов после матча «Бенфика» - «Зенит»','Sportbox','Группа C');into news values (2,4,'Взаимные санкции РФ и Запада','Lenta.ru','За рубежом');into news values (2,5,'Большинство шотландцев не поняли, какие полномочия обещает им Лондон','РИА Новости','За рубежом');into news values (2,6,'Единороссы получили свою Мосгордуму','«Коммерсантъ-Online»','Москва');into news values (3,7,'Renault показала автомобиль с расходом 1 литр','АВТО-mail','Парижский автосалон');into news values (3,8,'По дорогам России и Белоруссии ездят сотни машин-двойников','АВТО-mail','Россия');into news values (3,9,'Автомобили Lada хотят собирать в Африке','«Коммерсант»','В мире');

ALTER TABLE kategorPRIMARY KEY (id_kt);TABLE newsPRIMARY KEY (id_nws);TABLE newsFOREIGN KEY (id_kt)kategor (id_kt) on delete cascade;kic2;

java.sql.*;class KIC2

{Connection con = null; // соединение с БДStatement stmt = null; // оператор

// КонструкторKIC2(String DBName, String ip, int port) throws Exception

{

// подключаю драйвер.forName("com.mysql.jdbc.Driver").newInstance();

// устанавливаю соединение с БДurl = "jdbc:mysql://localhost:3306/agenstvo";= DriverManager.getConnection(url, "root", "root");= con.createStatement();

}

// Завершение работыvoid stop() throws SQLException

{.close();

}

// Добавление категорииboolean addKategor(int idkt, String namekt)

{sql = "INSERT INTO kategor (ID_kt, NAME)" + "VALUES ("+idkt+", '"+namekt+"')";

{.executeUpdate(sql);.out.println("Категория "+namekt+ " успешно добавлена!");true;

} (SQLException e)

{.out.println("ОШИБКА! Категория "+namekt+" не добавлена!");

System.out.println(" >> "+e.getMessage());

return false;

}

}

// Добавление новости в категорию

public boolean addNews(int idkt, int idnws, String name, String red, String mesto)

{sql = "INSERT INTO news (ID_kt, ID_nws, name, red, mesto )" + "VALUES ("+idkt+", "+idnws+", '"+name+"', '"+red+"', '"+mesto+"')";

{.executeUpdate(sql);.out.println("Новость "+idnws+ name+ " успешно добавлена!");true;

} (SQLException e)

{.out.println("ОШИБКА! Новость "+idnws+ name+" не добавлена!");.out.println(" >> "+e.getMessage());false;

}

}

// Удаление категорииboolean deleteKategor(int id) throws SQLException

{sql = "DELETE FROM kategor WHERE ID_kt = "+id;

{c = stmt.executeUpdate(sql);

if (c>0)

{.out.println("Категория с идентификатором "+ id +" успешно удалена!");true;

}

{.out.println("Категория с идентификатором "+ id +" не найдена!");

return false;

}

} (SQLException e)

{.out.println(

"ОШИБКА при удалении страны с идентификатором "+id);

System.out.println(" >> "+e.getMessage());false;

}

}

// Удаление новостиboolean deleteNews(int id) throws SQLException

{sql = "DELETE FROM news WHERE ID_nws = "+id;

{c = stmt.executeUpdate(sql);

if (c>0)

}

{.out.println("Новость с идентификатором "+ id +" не найдена!");

return false;

}

} (SQLException e)

{.out.println(

"ОШИБКА при удалении новости с идентификатором "+id);

System.out.println(" >> "+e.getMessage());false;

}

}

// Запрос всех категорийvoid showKategor()

{sql = "SELECT ID_kt, NAME FROM kategor";

{rs = stmt.executeQuery(sql);

System.out.println("СПИСОК Категорий:");

while (rs.next())

{id = rs.getInt("ID_kt");name = rs.getString("NAME");.out.println(" >> "+ id + " - " + name);

}.close();

} catch (SQLException e)

{.out.println(

"ОШИБКА при получении списка категорий");

System.out.println(" >> "+e.getMessage());

}

}

// Запрос всех Новостейvoid showNews()

{sql = "SELECT * FROM news";

{rs = stmt.executeQuery(sql);

System.out.println("СПИСОК Новостей:");

while (rs.next())

{

//int idkt = rs.getInt("ID_kt");id = rs.getInt("ID_nws");name = rs.getString("NAME");red = rs.getString("red");mesto = rs.getString("mesto"); .out.println(" ID:"+ id + " Имя: " + name + " Редакция: " + red + " Место:" + mesto);

}.close();

} (SQLException e)

{.out.println("ОШИБКА при получении списка новостей");

System.out.println(" >> "+e.getMessage());

}

}

//Изменить категориюboolean EditKategor(int id,String newname) throws SQLException

{sql = "Update kategor set NAME='"+newname+"' WHERE ID_kt = "+id;

c = stmt.executeUpdate(sql);

if (c>0)

{.out.println("Категория с идентификатором "+ id +" изменена!");true;

}

{.out.println("Категория с идентификатором "+ id +"не изменена т.к нет такой категории!");

return false;

}

}

//Изменить новостьboolean EditNews(int id,String newname, String newred, String newmesto ) throws SQLException

{sql = "Update news set NAME='"+newname+"',RED='"+newred+"',MESTO='"+newmesto+"' WHERE ID_nws = "+id;

c = stmt.executeUpdate(sql);

if (c>0)

{

.out.println("Новость с идентификатором "+ id +" успешно изменена!");true;

}

{.out.println("Новость с идентификатором "+ id +"не изменена т.к новости с таким id нет!");false;

}

}

//Поиск категории по id

public void PoiskpoKategor(int id) throws SQLException

{sql = "SELECT ID_kt, name FROM kategor WHERE ID_kt = " + id;

{rs = stmt.executeQuery(sql); ( rs.next()==true)

{.out.println("Категория:");= rs.getInt("ID_kt");name = rs.getString("name");.out.println(" >> "+ id + " - " +name );

}

{.out.println("категории с таким айди не существует!");

}.close();

} (SQLException e)

{.out.println(

"ОШИБКА при получении категории " );

System.out.println(" >> "+e.getMessage());

}

}

{sql = "SELECT ID_nws, name,red,mesto FROM news WHERE ID_nws = " + id;

{rs = stmt.executeQuery(sql); ( rs.next()==true)

{.out.println("Новость:");= rs.getInt("ID_nws");name = rs.getString("name");red = rs.getString("red");mesto = rs.getString("mesto");.out.println(" >> "+ id + " - " +name +" "+red+ " "+mesto );

}

{.out.println("Новости с таким айди не существует!");

}.close();

} (SQLException e)

{.out.println(

"ОШИБКА при получении новости " );

System.out.println(" >> "+e.getMessage());

}

}

//Показать новости конкретной категорииvoid NewsofKategor (int id) throws SQLException

{sql = "SELECT ID_kt,ID_nws, name FROM news WHERE ID_kt = " + id;

{rs = stmt.executeQuery(sql); ( rs.next()==true)

{

{.out.println("Новость:");= rs.getInt("ID_kt");idn=rs.getInt("ID_nws");name = rs.getString("name");

//String red = rs.getString("red");

//String mesto = rs.getString("mesto");.out.println(" >> id категории: "+ id + " >>id новости: " +idn+ " - "+name /*+" "+red+ " "+mesto*/ );

}(rs.next());

}

{.out.println("Новости нет, т.к категрии не существует!");

}.close();

} (SQLException e)

{.out.println(

"ОШИБКА при получении новости " );

System.out.println(" >> "+e.getMessage());

}

}

//static void main(String[] args) throws Exception

{agenstvo = new KIC2("agenstvo","localhost",3306);

//agenstvo.addKategor(4,"МcxxИР");

//agenstvo.addNews(2,10, " Мирвезде","Леgfhfнта","Планета");

//agenstvo.deleteKategor(1);

//agenstvo.deleteNews(4);

//agenstvo.showKategor();

//agenstvo.showNews();

//agenstvo.EditKategor(2, "ПФФФФф");

//agenstvo.EditNews(2,"ппррв","ппп","африка");

//agenstvo.PoiskpoKategor(2);.PoiskpoNews(10);

//agenstvo.NewsofKategor(2);

//agenstvo.showKategor();

}

}


Описание программы

class KIC2- класс,содержащий в себе методы по побработке данных и т.дpublic KIC2(String DBName, String ip, int port)) - конструктор с параметрами. В теле конструктора происходит подключение драйвера, устанавливается соединение с БД.void stop() - завершение работыvoid showKategor - метод, который выводит на экран все существующие категории

public void showNews() - метод,который выводит на экран все существующие новости

public boolean addKategor(int idkt, String namekt)) - метод, позволяющий добавить новую категорию. На вход принимаются параметры: новый id, новое имя категории

public boolean addNews(int idkt, int idnws, String name, String red, String mesto) - метод, позволяющий добавить новую новость. На вход принимаются параметры: id категории, в которую будем добавлять, новое id новости, имя, редакцию, место

public boolean deleteKategor(int id) - метод,позволяющий удалить категориию ( по id). public boolean deleteNews(int id) - метод, позволяющий удалить новость ( по id)void PoiskpoKategor (int id) - метод, позволяющий выводить информацию о заданной категории. На вход принимается id, по которому будем производить поискvoid PoiskpoNews (int id) - метод, позволяющий выводить информацию о заданном новости. На вход принимается id, по которому будем производить поискvoid NewsofKategor (int id) - метод, позволяющий вывести на экран новости конкретной категории.

public boolean EditKategor(int id,String newname)- метод, позволяющий изменять существующую категорию. На вход принимаются параметры: id группы, новое имяboolean EditNews(int id,String newname, String newred, String newmesto ) - метод, позволяющий изменять существующую новость

public static void main(String[] args) - основная логика приложения

ER-модель базы данных

Похожие работы на - Средства доступа к данным

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!