Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > SQL


Автор: JkKazbek 9.12.2007, 20:02
Привет всем я не смог соеденить с MSSQL 2000
в чем тут проблема?  Помогите соеденить !!! 
Я не смогу уведеть табличку t1;
Код

       String serverName="JAX-71C1563775F";  // локальная сервер 
       String NmBase ="MyBase";                   //   название базу 

       String password="";

                
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con=DriverManager.getConnection("jdbc:microsoft:sqlserver://"+serverName,"sa","");
Statement stmt=con.createStatement();
ResultSet rset = stmt.executeQuery("select * from t1");
        while (rset.next())
        {      System.out.println (rset.getString(0)+"  "+rset.getString(1));      // Print col 1
          }
         stmt.close();            
         con.close();
                    
 


Автор: Kangaroo 9.12.2007, 20:06
JkKazbek, 
а какие ошибки выводятся?

Автор: Samotnik 9.12.2007, 20:17
JkKazbek,  вроде правильно, а что пишет ?


Автор: LSD 10.12.2007, 11:08
Какая авторизация стоит у SQL Server-а?

Автор: Baka_tyan 10.12.2007, 12:28
Сперва запихни каждую строчку в try-catch,  затем увидишь где и какая ошибка.. или JUnit тест сделай.

Автор: JkKazbek 10.12.2007, 20:16
привет всем 
Вот такой ошибки


SQL.java:13: unrecported exception java.langClassNotFoundException;
must be caugred to be thrown
Connection con=DriverManager.getConnection("jdbc:odbc:dBase://"+serverName,"sa","");
                                           ^
SQL.java:15: unrecported exception java.sql.SQLException;
must be caugred to be thrown
 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");                            

SQL.java:16: unrecported exception java.langClassNotFoundException;
must be caugred to be thrown
Statement stmt=con.createStatement();
                                   ^
SQL.java:17: unrecported exception java.langClassNotFoundException;
must be caugred to be thrown
ResultSet rset = stmt.executeQuery("select nm from t1");
                                    ^    
SQL.java:18: unrecported exception java.sql.SQLException;
must be caugred to be thrown
        while (rset.next())
                         ^
SQL.java:19: unrecported exception java.sql.SQLException;
must be caugred to be thrown
         System.out.println (rset.getString(0)); 
                                           ^
SQL.java:20: unrecported exception java.sql.SQLException;
must be caugred to be thrown
stmt.close();
           ^        
SQL.java:21: unrecported exception java.sql.SQLException;
must be caugred to be thrown    
          con.close();

7 errors

D:\java\java Sql
Exception in thred "main" java.langClassNotFoundException:  Sql
                    ^


Автор: Kangaroo 10.12.2007, 20:40
Это у тебя компилятор такое выводил ?!  smile 
Цитата

caugred, unrecported, thred 


Попробуй добавить такой импорт
Код

import java.sql.*;

Автор: Platon 10.12.2007, 20:48
УУУУ, ребят, я думаю тут дело проще. Просто надо не выкабениваться и писать в блокноте, а писать в нормальной IDE.

Автор: Kangaroo 10.12.2007, 21:01
Цитата(Platon @  10.12.2007,  19:48 Найти цитируемый пост)
Просто надо не выкабениваться и писать в блокноте, а писать в нормальной IDE. 

Нормальная IDE тока запудрит мозги начинающему.. со всеми своими Визардами, кнопками и т.д. Спрячет за собой то, что нужно ПОНЯТЬ.
ИМХО, лучше всего текстовый редактор с подсветкой синтаксиса (типа jEdit)

PS
JkKazbek, я конечно понимаю, что тебе нужно быстрее решить проблему.. но писать мне в ПМ и на ящик не надо )) я и на форуме увижу и отвечу. Заранее спасибо. smile 

Автор: Platon 10.12.2007, 21:07
Kangaroo, категорически не согласен, долго мучался с текстовыми редактарами. Перешел на IDEA (не хочу рекламировать, просто посоветовали, и сразу прижилась), и проблемы все решились.
Конечно, возможно, IDE делают медвежьи услуги, к примеру в автоматической генерации всех блоков try{} catch(){}, но я считаю, что это рутина, которую должна выполнять IDE, а не программист.

ЗЫ: Как говорится, чтоб сосредоточиться на логике, а не на писании кода.
Хороша тут цитата powerOn "Некогда думать - надо писать код!"

Автор: LSD 11.12.2007, 00:17
JkKazbek, пропиши в CLASSPATH jar-ник с драйвером SQL Server-а.

Автор: Samotnik 11.12.2007, 00:22
Цитата(Kangaroo @  10.12.2007,  19:40 Найти цитируемый пост)
import java.sql.*;

 smile   Походу так и есть.
JkKazbek,  все ошибки указывают, на то что  какая то библиотека не подключена, т.к. ругается на стандартные методы и классы
Этот код у меня работает без проблем
Код

static String drivername="sun.jdbc.odbc.JdbcOdbcDriver";
static String url="jdbc:odbc:MyBase";
try    
{
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");    
} 
    catch(Exception e)    
{
System.out.println("Classdefnotfound"+e);    
}
  
    try{
   con=DriverManager.getConnection(url);
   sq=con.createStatement();
       String str=" SELECT * FROM Books";
       
      ResultSet r=sq.executeQuery(str);
      
     int i=0;
     while(r.next())
     {
d=r.getString("Author");
q=r.getString("Title");
ch1.add(d);
ch2.add(q);
i++;
         }
    con.close();
    con=null;
 
}
    catch(SQLException e){System.out.println("Can't connect to db");}
    

Кстати а в какой IDE  пишеш ?

Автор: serger 11.12.2007, 07:26
Цитата(Samotnik @ 11.12.2007,  00:22)
Кстати а в какой IDE  пишеш ?

Пиши в редакторе.

Потом, когда выработается свой стиль и пальцы запомнят основные приёмы, подберёшь удобную ide.


Автор: Platon 11.12.2007, 18:49
Цитата(serger @  11.12.2007,  08:26 Найти цитируемый пост)
Пиши в редакторе.

АААААА!!! Мы все умрем!!!
Такое ощущение, что вы отговариваете использовать IDE, что бы на рынке труда не было доп конкуренции.
Лично я, конечно же по своему опыту, категорически рекомендовал бы использовать IDE.
Это позволит быстрее вникнуть в основное API, понять, в чем синтаксическая ошибка заключается, более того в некоторых случаях указывается и семантические.

Дело конечно ваше, использовать или нет, но то что без IDE вам придется копаться в кучах книг, лазать по форумам и поисковикам, чтоб написать программку сложнее HelloWorld, это я вам гарантирую с вероятностью 90%

Автор: Kangaroo 11.12.2007, 19:08
JkKazbek, ну как дела с ошибкой? Отпишись, а то я вижу эта тема многих заинтересовала )

<оффтоп>
ЗЫ
Platon, мы говорим с тобой о разных вещах.
Конечно, когда человек начинает программировать не для обучения, а для работы - нужна IDE.

Но когда человек УЧИТСЯ - полюбому редактор с подсветкой синтаксиса.
Потому что потом бардак начинается.
Примеры (сам сталкивался!):
Какие такие команды javac и java? - ЗЕЛЕНУЮ КНОПКУ нажимаешь и все запускается...
Какой такой classpath? - Add Library энд ноу проблем..
А визарды так вообще убивают всякое понимание )) 
</оффтоп>


Автор: Maksym 11.12.2007, 19:25
[OFFTOPIC]
Цитата(Platon @  11.12.2007,  17:49 Найти цитируемый пост)
Дело конечно ваше, использовать или нет, но то что без IDE вам придется копаться в кучах книг, лазать по форумам и поисковикам, чтоб написать программку сложнее HelloWorld, это я вам гарантирую с вероятностью 90% 

Так это же хорошооо..  smile  закопаться в кучу книг и документации это нормально, если ты учишься  smile  
Far + colorer plugin = отличный старт. Но как только базу проработаешь -- сам почувствуешь, что вот оно... пора..   smile    -- и быстренько перескочишь в Eclipse.
Когда-то я почуствовал этот момент (что надо пересесть) очень остро. Пробовал в Far'e, что-то начало получатся, поставил colorer, потом macros и completion plugin, написал кучу батников, еще пару плагинов для быстрого поиска.. шаг за шагом донастривался до того, что Far превратился в мини Java IDE.. начал пробовать продвинутые редакторы для программистов... а потом пересел на IDE с полным осознанием того, зачем она мне нужна, и в каких ситуациях лучше воспользоваться другими инструментами.
[/OFFTOPIC]

Автор: Platon 11.12.2007, 19:41
Модерам предлагаю отцепить в отдельную тему
Kangaroo, пишу с точки зрения, наверно, детской.
Когда начинаешь новый раздел своей жизни, хочется чтобы тебя окружал комфорт, забота и любовь, хочется чувствовать себя умным от того, что ты сразу же вникаешь в курс дела, для подростковой психики ребенка, это как допинг, он просто окрыляется! Он начинает понимать, что вот оно, его призвание! Проходит время, он по-прежнему пишет в своей IDE, он в ней знает каждую завитульку, и предугадывает любой шаг, легким движением Ctrl+Q он узнает для чего тот или иноф метод, класс, интерфейс, благодаря ей он легко въезжает в любые API за неимоверно короткий срок (на своем опыте недавно столкнулся с Apache MINA, легко понял что к чему) Он растет и развивается! Он считает себя крутым программистом, и считает что эту технологию надо знать от и до, и начинает углубляться все ниже и ниже в дебри суровой взрослой жизни, начинает работать с командной строкой, пробует сам подключить библиотеки, собирает jar файлы, начинает работать с Ant, всё, теперь он молодец. В детстве его не обделили вниманием, и к юности он вырос благородным молодым человеком, перед которым открывается весь мир Java!

Теперь представим, если вам не дают пользоваться IDE, вы начинаете ковыряться во всех доступных материалах, чтобы понять, что это за ошибка, и почему она появляется именно тут? К примеру, я когда только начинал, долго убивался по поводу

Код

class FirstApp {
    public void sayHello(String name) {
        System.out.println("Hello " + name + "!!!");
    }

    public static void main(String[] args) {
        sayHello("Platon");
    }
}

Такой банальщины в книжках с ходу трудно найти. Вот и паришься сидишь, читаешь книжку, сконцентрировавшись на поиске ответа, пропуская мимо ушей всю остальную инфу. Находишь на 2-й час, исправляешь и облегченно вздыхаешь: "Боже ты мой! Я так в гроб слягу, если по 2 часа буду писать подобное!"
Конечно, это быстро лечится, но некоторые не могут преодолеть этого психологического барьера, и мы теряем еще 1 соратника :(

PS. Как и в реальной жизни, бывают дети-нахлебники, которые все никак не могут вылезти из теплого лона IDE, и остаются висеть у нее на шее до конца своих дней, не стремясь к независимости*. На то у них свои причины, но в любом случае все остаются довольны.

*О независимости:
Дело тоже архи спорное. Не видел ниодной IDE, чтоб были какие-то проблемы при переносе исходников из одной среды в другую.

Цитата(Maksym @  11.12.2007,  20:25 Найти цитируемый пост)
закопаться в кучу книг и документации это нормально, если ты учишься

Я предпочитаю учиться в игровой форме ;)
Сейчас конечно другой статус, более серьезно смотришь на вещи, но на заре это очень помогает!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)