bom estou usando o seguinte codigo para inserir um dado na minha db do oracle
public static void inserir(Connection connection){
String sql = "INSERT INTO Chave (modelo, precoUnitario) values (?,?)";
Preparedstatement stat = connection.preparedStatement(sql);
stat.setString(1, "GOLD");
stat.setString(2, 34.78);
stat.executeUpdate();
}
ocorre que ao tentar executar o comando ele diz que o indice da coluna está invalido ! mais não vejo erro nenhum
Tchello
Outubro 20, 2010, 7:30pm
#2
O índice começa em 0, não em 1.
public static void inserir(Connection connection){
String sql = "INSERT INTO Chave (modelo, precoUnitario) values (?,?)";
Preparedstatement stat = connection.preparedStatement(sql);
stat.setString(0, "GOLD");
stat.setString(1, 34.78);
stat.executeUpdate();
}
A propósito, o preço unitário é do tipo String mesmo? Não deveria ser assim:
stat.setDouble(1, 34.78);
Se for string, use : stat.setString(1,"34.78");
e se for um double, use:
stat.setDouble(1, 34.78);
[quote=Tchello] O índice começa em 0, não em 1.
[/quote]
Pior que não
Começa em 1 mesmo
http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html
Os arrays sim começam em 0.
Tchello
Outubro 20, 2010, 8:30pm
#5
[quote=furutani][quote=Tchello] O índice começa em 0, não em 1.
[/quote]
Pior que não
Começa em 1 mesmo
http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html
Os arrays sim começam em 0.[/quote]
omg #FAIL
Peço desculpas com humildade pelo erro. (ai que bom se fosse fácil assim sempre com quem erra né? hehehe).
[quote=Tchello][quote=furutani][quote=Tchello] O índice começa em 0, não em 1.
[/quote]
Pior que não
Começa em 1 mesmo
http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html
Os arrays sim começam em 0.[/quote]
omg #FAIL
Peço desculpas com humildade pelo erro. (ai que bom se fosse fácil assim sempre com quem erra né? hehehe).
[/quote]
Sem problemas! É confuso mesmo, não sei por que cargas d´agua começa em 1.
Tchello
Outubro 20, 2010, 8:34pm
#7
[quote=furutani][quote=Tchello][quote=furutani][quote=Tchello] O índice começa em 0, não em 1.
[/quote]
Pior que não
Começa em 1 mesmo
http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html
Os arrays sim começam em 0.[/quote]
omg #FAIL
Peço desculpas com humildade pelo erro. (ai que bom se fosse fácil assim sempre com quem erra né? hehehe).
[/quote]
Sem problemas! É confuso mesmo, não sei por que cargas d´agua começa em 1.[/quote]
Yep, ao ler sua resposta me lembrei de ter reclamado disso um dia: como que tudo começa em zero e logo isso vai começar em 1?
Bom, se não foi disso que reclamei foi de alguma outra coisa que foge a regra.
Abraços!
pois é meu codigo ta assim:
public static void inserirDados(Connection conexao, String modelo, int numeracao, int quantidade, double precoUnitario) throws SQLException{
String query = "INSERT INTO Chave (MODELO, PRECO_UNITARIO) values (?,?)";
PreparedStatement preparedstatement = conexao.prepareStatement(query);
preparedstatement.setString(1, modelo);
preparedstatement.setDouble(2, precoUnitario);
preparedstatement.executeUpdate();
e continua dando a exceção : Índice da Coluna Inválido
alguem pode me ajudar porfavor