Acessar BD

Boa Noite…
Eu criei uma conexão com o bando de dados SQL Server que está conectando ok. Agora preciso criar uma classe para ver, inserir, etc… em uma tablela JÀ EXISTENTE no banco.
Não faço a mìnima ideia como para mexer nessa tabela.
Sei como criar uma nova tabela, mais não ver uma que já existe.
Será que alguem pode me ajudar?
Tô apanhando muito… :roll:
Obrigada

Aprenda SQL

http://www.w3schools.com/sql/default.asp

Vc pode usar a clausula INSERT – de uma olhada na apostila fj-21 da caelum no primeiro capitulo:

Da uma olhada nas classes e ve se ajuda :smiley:

[code]public class DAO {
DB db = new DB();
private Connection con;
private Modelo modelo;

public DAO(Modelo modelo) {
	this.modelo = modelo;
	con = db.getConnection();
}

public boolean insert() {
	Statement stm = null;
	String SQL = "insert into x (a, b, c, d) values ";
	String valores = "('" + modelo.getA() + ",'" + modelo.getB() + ",'" + modelo.getC() + ",'" + modelo.getD() + ")";
	SQL += valores;
	boolean ok = false;
	try {
		stm = con.createStatement();
		ok = stm.execute(SQL);
	} catch (SQLException e) {
		e.printStackTrace();
	} finally {
		try {
			stm.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		db.close();
	}
	return ok;
}

public int update() {
	Statement stm = null;
	String SQL = "update x set ";
	String valores = "(a = '" + modelo.getA() + ", b = '" + modelo.getB() + ", c = '" + modelo.getC() + ", d = '" + modelo.getD() + ")";
	SQL += valores;
	int total = 0;
	try {
		stm = con.createStatement();
		total = stm.executeUpdate(SQL);
	} catch (SQLException e) {
		e.printStackTrace();
	} finally {
		try {
			stm.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		db.close();
	}
	return total;
}

public void select() {
	Statement stm = null;
	String SQL = "select * from x";
	ResultSet rs = null;
	try {
		stm = con.createStatement();
		rs = stm.executeQuery(SQL);
		modelo.setA(rs.getString("a"));
		modelo.setB(rs.getString("b"));
		modelo.setC(rs.getString("c"));
		modelo.setD(rs.getString("d"));
	} catch (SQLException e) {
		e.printStackTrace();
	} finally {
		try {
			stm.close();
			rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		db.close();
	}
}

}
[/code]

[code]public class Modelo {

public String getA() {
	return null;
}

public String getB() {
	return null;
}

public String getC() {
	return null;
}

public String getD() {
	return null;
}

public void setA(String string) {
}

public void setB(String string) {
}

public void setC(String string) {
}

public void setD(String string) {
}

}
[/code]

[code]public class DB {
private Connection con;

public Connection getConnection() {
	try {
		// colocar a classe de driver do banco de dados que for usar
		DriverManager.registerDriver(new com.ibm.db2.jcc.DB2Driver());
		// trocar os dados para o banco de dados que for usar
		con = DriverManager.getConnection("jdbc:YYYY://xxxxxxxx:0000/AAAAAA", "XXXXXX", "XXXXXX");
	} catch (SQLException e) {
		e.printStackTrace();
	}
	return con;
}

public void close() {
	if (con != null) {
		try {
			con.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
}

}[/code]

Detesto fazer esse papel, mas concatenar string pra gerar SQL é fonte de problemas: pra isso existe o preparedStatement.

É claro que o exemplo é didatico, mas não custa avisar. SQL Injection é uma das coisas mais comuns nos dias de hoje e, mesmo q não fosse um problema, imagine na hora de cadastrar a Joana D’arc ? :wink:

Nao tinha pensado nisso antes vlw :lol:

olá
eu tenho a apostila da caelum, mais nela ela cria uma classe Contato, para depois inserir os dados usando o PREPARED STATEMENT.
No meu caso minha tabela está no SQL Sever Management Studio, dai não sei como eu “chamo” essa tabela para usa-la
obrigada