powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Соединение с MSSQL
25 сообщений из 30, страница 1 из 2
Соединение с MSSQL
    #33902074
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет. Подскажите, как сделать соединение с MSSQL?
У меня установлен SQL Server Developer Edition. Требуется соединиться с этой БД и вывести данные из БД Northwind таблици Orders либо в jTable либо в System.out.println(). Какие для этого нужны предворительные приготавления?
1) Какой тип аутинтификации выставить?
2) Требуется ли установить какие нибудь драйвера?
3) Нужно ли установить какие нибудь библиотеки?
4) ... еще что нибудь?

Полазил в поиске, нашол пример кода соединения:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 public   static   void  main(String[] args)  throws  SQLException, ClassNotFoundException {
         Class .forName("com.jnetdirect.jsql.JSQLDriver");
        Connection con = DriverManager.getConnection("jdbc:JSQLConnect://localhost/database=Northwind", "Java", "pass");
        Statement st = con.createStatement();
        ResultSet rs = st.executeQuery("select * from orders");
         if  (rs.next()) {
          System.out.println(rs.getString(""));
        }
        rs.close();
        st.close();
        con.close();
    }
выдает ошибку: Exception in thread "main" java.lang.ClassNotFoundException: com.jnetdirect.jsql.JSQLDriver
Помогите пожалуйста разобраться. Заранее всем спасибо =)
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902083
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вам не понятна суть exception'а, то вам Хорстманна читать с первой главы, а не с базой данных работать. Это первая ошибка (обычно), которую получает java-разработчик при написании.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902088
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterioЕсли вам не понятна суть exception'а, то вам Хорстманна читать с первой главы, а не с базой данных работать. Это первая ошибка (обычно), которую получает java-разработчик при написании.
Суть понятна, вроде бы ) неможет наити такого класса JSQLDriver
Хортсмана читаю, особый интерес к Java + БД, многое непонятно вот и спрашиваю ) а на реальных задачах как то интереснее учиться помоему.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902185
jikez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А где взял лицензии на jnetdirect?
он же вроде как за бабло
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902227
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jikezА где взял лицензии на jnetdirect?
он же вроде как за бабло
За бабло??? Значит jnetdirect у меня не установлен. Как можно подключиться используя стандартные средства? Если не сложно приведите пример кода соединения. В Хортсмане нет к сожалению приера соединения с MSSQL.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902332
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на сайте микрософта есть официальный бесплатный микрософтовский жбц драйвер с хелпом и примерами
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902405
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1024на сайте микрософта есть официальный бесплатный микрософтовский жбц драйвер с хелпом и примерами

угу - официальный от MS - гавно редкостное. Вы его сами то пробовали использовать?

авторfjord

Посмотрите в сторону jTDS . Насчет типа аутентификации - смотрите описание к нему. Советую в начале остановиться на SQL Authentication.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33902620
Фотография 1024
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторугу - официальный от MS - гавно редкостное

=8O
ужос какой

авторВы его сами то пробовали использовать?

да вроде работает
http://sss1024.narod.ru/wdbv.htm
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903093
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Процитирую, хоть и слегка кривовато, одного форумчанина (не с sql.ru):
А почему, когда вы хотите научиться водить, вы не садитесь сразу за раллийный автомобиль? Да какая разница, что вы еще не знаете, как сцепление выжать, на реальной-то задаче (экстремальное вождение) учиться интереснее! Или выбирая горные лыжи, не берете сразу самый сложный маршрут? Вот это в голову приходит только идиотам, а брать сразу довольно серьезную задачу по программированию почти каждому среднестатистическому программисту.

В итоге вы беретесь за сложную (для новичка) задачу и дальше два пути:
1. Вы безуспешно мучаетесь N дней и в итоге забиваете. В принципе расклад хороший - на одного плохого программиста в мире становится меньше.
2. Вы мучаетесь N дней, спрашиваете людей на форуме, в итоге через сколько-то суток получаете нужное решение вашей проблемы, причем чаще всего плохо понимаете, как собственно проблема и решилась то. В принципе задача решена, только упущено огромное кол-во той информации, которую бы вы получили, решив задачу самому. Итого через сколько-то дней вы беретесь решать новую "интересную" задачу и натыкаетесь на те же или похожие (которые смогли бы уже решить сами!) грабли. Возможно в мира на одного хорошего программиста станет больше, а может и не станет :).
Тут же стоит сделать одно важное замечание - второй подход может быть оправдан, если поджимают сроки или вы беретесь за ту задачу, изучение и решение которой потребуют неоправдано много времени и в дальнейшем эти знания вам скорее всего не пригодятся (пример: очень специфичная в какой-то области задача с нестандартными алгоритмами, требующая глубоких знаний в этой области).
Резюме: если сейчас перед вами стоит цель именно научиться эффективно использовать Java - стоит обучаться последовательно. Для начала очень полезно почитать первый том Хорстманна (замечательный автор!), второй можно читать отдельными главами или обращаться к нему по мере надобности.

P.S. Я сейчас сам пролистываю Хорстманна и поражаюсь, какие неочевидные тонкости упустил, когда читал его в первый раз. В этот раз буду повнимательнее.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903134
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterio
Может я не прав, но помоему в Хортсмане очень размыто описана работа с БД. А по поводу ваших рассуждений, считаю что только выполнение задач выше своего уровня может привести к развитию.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903230
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стоп. Хорстманн дает лишь обзор основных техник и это то, для чего он предназначен. Если знаний из Хорстманна вам не хватает для решения задачи - прочитайте нечто, что описывает продвинутые методики программирования с базами данных.
А насчет того, что вы считаете..
ну это ваше право, но не удивляйтесь, когда через год будете ловиться на примитивных граблях, которые по-хорошему программист должен пресекать уже через 2 месяца работы.
До вас дошло, что оказывается тот Exception свидетельствует о том, что загрузчик не может найти нужный класс, но не дошло то, что по имени класс явно не входит в стандартную библиотеку и является jdbc-драйвером, представляемым сторонним производителем, а следовательно у вас в JRE его быть и не может. То есть его надо скачивать и подключать отдельно.
И я уверен, что как-только вы найдете нужный драйвер и скачаете его, вы удивитесь, что оказывается он тоже не работает и полезете на этот форум, чтобы узнать, а что же такое CLASSPATH и как его поставить.
В итоге я крутой и приложения уровня helloworld меня не волнуют, но вот на задачах выше своего уровня вы начинаете спотыкаться именно на уровне helloworld.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903275
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterio
Драивер скачал с подсказки 1024 =) за что ему большое спасибо. Документации с ним идет достаточно чтоб сделать все самому )
Когда освою как да что, если потребуется помогу разобраться начинающему без лишних рассуждений.

P.S. на Java учусь программировать еще только месяц
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903308
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поможете начинающему разобраться и окажете ему медвежью услугу. Почему? Я уже устал писать.
А то, что вы пишете на Java всего месяц, это извините детский сад, а не оправдание.
Представьте, вы ведете пассажирский самолет и на подлете к пункту назначения выясняется, что у него клинит шасси. Тогда вы берете и пишете завещание на основании того, что вы летаете всего месяц и аварийной посадке еще не научились.
P.S. слегка неправильную ситуацию подобрал, вам все-таки попытаются помочь с бюро управления полетами, правда это не гарантирует избежания плачевного результата :)
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903377
Sherst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понимаю зачем вам MSSQL.
Ставьте Oracle и не мучайтесь :)

Ну а в общем код приблизительно такой, который вы привели.
Обратите внимание на строку
Код: plaintext
1.
System.out.println(rs.getString(""));
В ней вы можете указать название поля в бд, либо номер данного столбца в таблице.
Т.е. как-то так rs.getString("FieldName1") или
rs.getString(1);

Ну а дальше все как описывал mysterio (вернее это надо делать с самого начала). Скачиваете нужный вам jdbc-драйвер, регестрируете его в переменной окружения CLASSPATH. И наслаждаетесь жизнью ...
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33903406
Sherst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На счет вывода в JTable посмотрите в папке ...jdk\demo\jfc\TableExample\src
там есть класс JDBCAdapter и примеры работы с JTable.
Удачи.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904369
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Установил драйвер, прописал CLASSPATH к нему.
Название сервера БД - (local);
БД - Northwind;
Login - Java;
Пароль - pass;
Делаю:
Код: plaintext
1.
2.
3.
     public   static   void  main(String[] args)  throws  ClassNotFoundException, SQLException{
         Class .forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        String connectionUrl = "jdbc:sqlserver://localhost;database=Northwind;user=Java;password=pass;";
        Connection con = DriverManager.getConnection(connectionUrl);
}
Выдает ошибки:
Exception in thread "main" com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host has failed. java.net.ConnectException: Connection refused: connect
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.loginWithoutFailover(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
Что не так?
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904394
expp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот это "//" в урле смотрится оооочень подозрительное
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904395
mysterio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конкретно по проблеме довольно ясно написано, что соединение с СУБД отклонено. Либо сервер криво настроили, либо он вообще не работает, либо jdbc URL фигово прописали. С Northwind к сожалению не работал, не скажу.

Теперь дальше. То, как вы начинали метод main() вызывает сомнения, что вы собираетесь писать программу в процедурном стиле. В Java эта методика не работает и вы запнетесь довольно быстро.

И еще. Кто вас учил прокидывать исключения дальше по стеку в методе main()?
Было бы нравственно их все-таки обрабатывать. Здесь неактуально, но все-таки писать в хорошем стиле надо с самого начала.
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904400
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mysterioЛибо сервер криво настроили, либо он вообще не работает
сервер работает.
mysterioТо, как вы начинали метод main() вызывает сомнения, что вы собираетесь писать программу в процедурном стиле. В Java эта методика не работает и вы запнетесь довольно быстро
делаю так исключительно для тестирования
mysterioИ еще. Кто вас учил прокидывать исключения дальше по стеку в методе main()?
Работаю в netBeans, он сам вставляет эти исключения. На счет хорошего стиля вы правы, но в данном случае мне требуется понять как осуществить подключение и работу с БД.
exppвот это "//" в урле смотрится оооочень подозрительное
если без "//", пишет: Exception in thread "main" java.sql.SQLException: No suitable driver
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904481
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. - У меня установлен SQL Server Developer Edition.

по умолчанию это чудо работает только через shared memory. Нужно разрешить ему слушать TCP.

2. Внимательно прочитать Building the Connection URL из документации к драйверу
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904744
Sherst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если так:

Код: plaintext
1.
String connectionUrl = "jdbc:microsoft:sqlserver://localhost:1433;database=Northwind;user=Java;password=pass;";
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904889
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SherstА если так:

Код: plaintext
1.
String connectionUrl = "jdbc:microsoft:sqlserver://localhost:1433;database=Northwind;user=Java;password=pass;";

Exception in thread "main" java.sql.SQLException: No suitable driver
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33904918
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил1. - У меня установлен SQL Server Developer Edition.

по умолчанию это чудо работает только через shared memory. Нужно разрешить ему слушать TCP.

У меня по умолчанию стоят Named Papes и TCP/IP
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33905342
Sherst
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покажите CLASSPATH
...
Рейтинг: 0 / 0
Соединение с MSSQL
    #33905531
fjord
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SherstПокажите CLASSPATH
CLASSPATH =.;C:\Program Files\Microsoft SQL Server 2005 JDBC Driver\sqljdbc_1.1\enu\sqljdbc.jar
В точности как в документации )
...
Рейтинг: 0 / 0
25 сообщений из 30, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Соединение с MSSQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]