Четверг, 17.07.2025, 02:15
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
.:: Меню ::.
.:: Категории каталога ::.
Разное [5]
Различные темы по программированию
Пакет SWT [4]
Практикуемся в написании оконных приложений на Java
Среды разработки, компиляторы и т.п [3]
Сравнения, описания, плюсы и минусы сред разработки. Сравнение компиляторов.
Java [8]
Объектно-ориентированные соображения.
Си++ [19]
Коротко и ясно
Ассемблер [6]
Машинные коды, побитно :)
Форма входа
.:: Поиск ::.
.:: Дополнительно ::.
    Хостинг от Loqo.ru
             .:: Коментируем ::.
Главная » Статьи » Текстовый материал » Java

Используем JDBC для работы с MySQL
Программка консольная, загружает драйвер JDBC для MySQL и проверяет связь с СУБД.
Code

/*
  * Тестовый пример работы через драйвер JDBC с СУБД MySQL
  * База данных telbook
  * Программа соединяется с базой, выодит количество колонок таблицы directory
  * Выводим содержимое таблицы
  *  
  * 2010 год.
  * IDE - Eclipse
  */
import java.sql.*;

public class TestConnect
{
  static Connection connection;

  public static void main()
  {
  // TODO Работаем с драйвером
  String drv = "com.mysql.jdbc.Driver";
  String url = "jdbc:mysql://localhost/telbook";
  String login = "root";
  String pass = "";
  try
  {
  Class.forName(drv);
  connection = DriverManager.getConnection(url, login, pass);
  System.out.println("Есть соединение с БД!");
  Statement stmt = connection.createStatement();
  ResultSet result = stmt.executeQuery("SELECT * FROM directory");
  ResultSetMetaData md = result.getMetaData();
  int cnt = md.getColumnCount(); // получаем число колонок
  int row = 0;
  while (result.next())
  {
  row++;
  System.out.println("Row " + row); // номер строки
  for (int i = 1; i <= cnt; i++)
  {
  String name = md.getColumnName(i); // имя поля
  String val = result.getString(i); // значение
  System.out.println(name + "=" + val); // имя и значение
  }
  }
  result.close();
  stmt.close();
  connection.close();
  }  
  catch (ClassNotFoundException ex)
  {
  System.err.println("Нет драйвера.");
  System.err.println(ex);
  }  
  catch (SQLException ex)
  {
  System.err.println("Нет соединения.");
  System.err.println(ex);
  }
  ;
  }

}

Во-первых нужно к проекту подключить JDBC драйвер для МуСкула.
Берём его -здесь !
Про таблицу в базе данных я напишу в конце.
Создаём поле нашего класса с имечком - connection.
Класс Connection, представляет собой соединение с базой данных.

Начнём с начала метода main.
Четыре строковые переменные содержат: название драйвера, путь к базе данных, логин и пароль соответственно.
Далее идёт блок try, так как при загрузке драйвера и посылке запроса базе могут вылезти исключительные ситуации.
Загружаем драйвер следующей строчкой:

Code

Class.forName(drv);

Далее используем менеджер драйверов и устанавливаем соединение с СУБД.
Выводим сообщение что всё ОК если всё прошло нормально, иначе, если пойдёт что-то не так, то возникнет исключительная ситуация и она будет отловлена, а сообщение выведено на консоль.
Statement - интерфейс используется чаще всего и предназначается для разового выполнения статических запросов.
Проще всего иметь дело с executeQuery(), который возвращает ссылку на специальный класс результата - ResultSet. Тогда остается только воспользоваться его методами, чтобы считать возвращенное значение.
ResultSetMetaData - получаем мета информацию о таблице.
Остальной код очевиден.
Не забываем закрывать все открытые соединения (они конечно будут закрыты самостоятельно, но позаботимся об этом сами, это считается хорошим тоном в программировании)
Запускаем программу и наслаждаемся результатом.

Таблица - directory
содержит 3 колонки:
id - int(11), PRIMARY KEY
name - varchar(64)
phone - varchar(16)

sql скрипт:

Code

CREATE TABLE `directory` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(64) NOT NULL,
  `phone` varchar(16) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=cp1251
Категория: Java | Добавил: C0demaker (14.03.2010)
Просмотров: 7023 | Комментарии: 4 | Рейтинг: 0.0/0
Всего комментариев: 3
0  
3 C0demaker   (02.07.2013 20:11) [Материал]
Всегда пожалуйста smile

0  
1 Yur4ik   (23.09.2010 01:32) [Материал]
Привет! Спасибо за статью! smile
Нет ли у тебя жедания добавить еще статьи по работе с MySQL ?
Хотябы самое элементарное от настроек до простого создания таблички ну и прочее.

0  
2 C0demaker   (28.09.2010 23:32) [Материал]
Настройка самой системы управления БД я пологаю ?
Самое элементарное могу описать, необходимое для запуска данного приложения.
Развёртывание MySQL сервера, создание пользователя, наделение пользователя правами, создание базы данных, создание таблицы, занесение информации в таблицу, обновление, удаление.
Хорошо, как будет время, постараюсь написать такую статью.

Добавлено:
Первая часть статьи: http://pr0gram.clan.su/publ....1-1-0-66
Вторая часть: http://pr0gram.clan.su/publ....1-1-0-67



Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Ant1 © 2025