Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

 
liveinternet.ru: показано количество просмотров и посетителей

Библиотека :: Компьютеры и Программирование :: Начинаем изучать MySQL
<<-[Весь Текст]
Страница: из 157
 <<-
 
предоставляющий данные о соединении.
Пример 14-2. Файл SelectResource.properties с подробностями соединения
Driver=com.imaginary.sql.msql.MsqlDriver 
URL=jdbc:msql://athens.imaginary.com:1114/db_test
В примере 14-3 показан переносимый класс Connection. 
Пример 14-3. Специфические данные
import java.sql.*; import java.util.*;
public class Connect {
public static void main(String argv[]) {
Connection con = null; 
ResourceBundle bundle = ResourceBundle.getBundle("SelectResource");
try {
String url = bundle.getString("URL"); 
Statement stmt; ResultSet rs;
Class.forName(bundle.getString("Driver")); // здесь осуществляется соединение 
con = DriverManager.getConnection(url, "borg", ""); }
catch( SQLException e ) { e. printStackTrace(); 
}
finally 
{
if( con != null )
{
try { con.close(); }
catch( Exception e ) { } 
} 
}
}
}
В этом примере установления соединения мы избавились от кода, специфичного для 
mSQL. Однако для разработчиков переносимых JDBC-приложений остается одна важная 
проблема, особенно касающаяся тех, кто работает с mSQL. JDBC требует, чтобы все 
драйверы поддерживали начальный уровень (entry level) SQL2. Это стандарт ANSI 
минимальной поддержки SQL. Если при вызовах JDBC вы поддерживаете начальный 
уровень SQL2, то ваше приложение будет стопроцентно переносимо на другие базы 
данных. MySQL поддерживает минимальный уровень SQL2, a mSQL - увы, нет. 
Приложения, написанные для mSQL, скорее всего, без проблем будут переноситься 
на другие базы данных, но приложения, написанные с использованием начального 
уровня SQL92, в полном объеме нельзя будет безболезненно перенести обратно на 
mSQL.
Простой доступ к базе данных
В примере Connect делалось не много. В нем было просто показано, как 
соединиться с базой данных. В соединении с базой данных нет пользы, пока вы не 
начинаете действительно обмениваться с ней данными. Простейшие виды доступа к 
базе данных - команды SELECT, INSERT, UPDATE и DELETE. В JDBC API вы 
используете экземпляр Connection для создания экземпляров класса Statement. 
Класс Statement представляет SQL-команду любого типа. В примере 14-4 показано, 
как вставить строку в базу данных, используя Statement.
Пример 14-4. Вставка строки в mSQL с помощью объекта JDBC Statement
import Java, sql.*; 
import Java, util.*;
public class Insert {
// Делаем вставку в таблицу, имеющую две колонки: test_id (int)
// и test_val (char(55))
// args[0] - это test_id, a args[1] - test_val
public static void main(String argv[]) {
Connection con = null;
ResourceBundle bundle = ResourceBundle.getBundle("SelectResource");
try {
String url = bundle.getString("URL"); 
Statement stmt;
Class.forName(bundle.getString("Driver"));
// здесь осуществляется соединение
con = DriverManager.getConnection(url, "borg", "");
stmt = con.createStatement();
stmt.executeUpdate("INSERT INTO test (test_id, test_val) " +
"VALUES(" + args[0] + ", '," + args[1] + ")"); 
} 
catch( SQLException e )
{
e. printStackTrace(); 
} 
finally
{
if( con != null )
{
try { con.close(); 
}
catch( Exception e ) { }
} 
} 
 
<<-[Весь Текст]
Страница: из 157
 <<-