Pessoal, uma dúvida.
Estou aprendendo a usar o mysql, já criei um database de nome “mydb”, dei os privlégios necessários a um usuário, dei o comando “use mydb”, criei uma tabela “agenda” e depois saí do console.
até aí tudo ok.
Percebi que foi criado um diretório chamado “mydb” contendo a tabela.
Resumindo:
o banco está em c:\mydb
duvida? como referencio este database na linha do driver JDBC conector/J?
é assim?
jdbc:mysql://localhost:3306/mydb
ou
assim?
jdbc:mysql://localhost:3306/c:\mydb
ou devo copiar a pasta “mydb” para o classpath do programa?
O servidor tem que estar ativo? Realmente eu não sei
Agradeço a todos
até então não consegui conectar.
quando uso tabelas de access via odbc fica fácil, mas outro banco tá dificil
quanto aos jars. já os referenciei no classpath
quanto o servidor mysql estar ativo, viajei? como faço isso?
quando eu instalei os servidor a unica opção interativa é o console. como faço pra deixar o servidor ativo
já baixei o conector/J sem problemas e já referenciei os .jars no claspath
isso foi fácil. eu também já tenho experiência com o jdbc, porem nunca trabalhei com um database server. por isso a dificuldade
Se você estiver utilizando o windows, tem como deixá-lo como um serviço, na hora da instalação, assim você pode pará-lo e iniciá-lo pelas ferramentas administrativas.
Ou pelo prompt de comando, entre em mysql\bin digite ‘mysqld’ para iniciar, e ‘mysql’ para conectar-se ao monitor, nele você pode executar os selects e etc.
Para mais informações, dá uma olhada na documentação no site do mysql(http://www.mysql.org) tem bastante coisa lá.
com.mysql.jdbc.jdbc2.optional.MysqlDataSource MySql = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
MySql.setServerName("127.0.0.1");
MySql.setPort(3306);
MySql.setDatabaseName("database");
MySql.setUser("root");
MySql.setPassword("");
Connection con = MySql.getConnection();
Statement stat = con.createStatement();
ResultSet rs = stat.executeQuery("select * from table");
Assim não é preciso ficar usando o Class.forName(“org.gjt.mm.mysql.Driver”).newInstance(); …
O ideal é fazer uma class com um método que retorne apenas a Connection, exemplo:
import java.sql.*;
class public DB {
public static Connection getConnection() {
com.mysql.jdbc.jdbc2.optional.MysqlDataSource MySql = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
MySql.setServerName("127.0.0.1");
MySql.setPort(3306);
MySql.setDatabaseName("database");
MySql.setUser("root");
MySql.setPassword("");
return MySql.getConnection();
}
}
Depois basta fazer assim:
Statement stat = DB.getConnection().createStatement();
ResultSet rs = stat.executeQuery("select * from table");