Domingo 22 de Diciembre de 2024, 18:35
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Java
»
JSP/Servlets
(Moderador:
arielb
) »
Error SQL Server insert
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Error SQL Server insert (Leído 10680 veces)
bertamax
Nuevo Miembro
Mensajes: 22
Error SQL Server insert
«
en:
Domingo 18 de Julio de 2010, 18:01 »
0
Estoy ejecutando mi aplicación y me lanza la siguiente excepción:
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Error de inserción: el nombre de columna o los valores especificados no corresponden a la definición de la tabla.
Traza error [Microsoft][ODBC SQL Server Driver][SQL Server]Error de inserción: el nombre de columna o los valores especificados no corresponden a la definición de la tabla.
¿A qué puede ser debido?
Gracias y saludos
Tweet
F_Tanori
Moderador
Mensajes: 1919
Nacionalidad:
Re: Error SQL Server insert
«
Respuesta #1 en:
Domingo 18 de Julio de 2010, 21:27 »
0
El error es en la consulta estas intentando insertar un numero diferente de valores
Ejemplo:
INSERT INTO TABLA (CAMPO1,CAMPO2,CAMPO3) VALUES (1,2) --Falta el valor del campo 3
INSERT INTO TABLA (CAMPO1,CAMPO2) VALUES (1,2,3) --Falta el nombre del campo 3 dentro de la lista de campos
INSERT INTO TABLA (CAMPO1,CAMPO2,CAMPO3) VALUES (1,2,3) --Misma cantidad de campos y valores
* campo = columna
revisa tu consulta.
Saludos
" ExIsTo y A vEcEs PiEnSo "
NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================
bertamax
Nuevo Miembro
Mensajes: 22
Re: Error SQL Server insert
«
Respuesta #2 en:
Domingo 18 de Julio de 2010, 22:29 »
0
Pues sí que coinciden porque mi código es el siguiente
<%@page import="java.io.*,java.sql.*"%>
<%@page session="true" errorPage="Error.jsp"%>
<jsp:useBean id="miBean" scope="session" class="beanBalnearios.altbajamodver"/>
<html>
<head>
<script LANGUAGE=JavaScript type="text/javascript">
function checkFields() {
missinginfo = "";
if (document.form.Nombre_usuario.value == "") {
missinginfo += "n - Nombre_usuario";
}
if (document.form.Apellidos_usuario.value == "") {
missinginfo += "n - Apellidos_usuario";
}
if (document.form.Codigo_usuario.value == "") {
missinginfo += "n - Codigo_usuario";
}
if (document.form.direccion.value == "") {
missinginfo += "n - dirección";
}
if (document.form.Poblacion.value == "") {
missinginfo += "n - Poblacion";
}
if (document.form.Provincia.value == "") {
missinginfo += "n - Provincia";
}
if (document.form.CodigoPostal.value == "") {
missinginfo += "n - CodigoPostal";
}
if (document.form.Telefono.value == "") {
missinginfo += "n - Telefono";
}
if ((document.form.email_usuario.value == "") ||
(document.form.email_usuario.value.indexOf('@') == -1) ||
(document.form.email_usuario.value.indexOf('.') == -1)) {
missinginfo += "n - email_usuario";
}
if (document.form.Dni.value == "") {
missinginfo += "n - Dni";
}
if (document.form.Tarjeta.value == "") {
missinginfo += "n - Tarjeta";
}
if (document.form.CCV.value == "") {
missinginfo += "n - CCV";
}
if (missinginfo != "") {
missinginfo ="_______________________________n" +
"Debe rellenar algunos campos yn" +
"escribir una dirección e-mail válida.n" +
"Revise los siguientes campos:n" +
missinginfo + "n_______________________________" +
"nPor favor inténtelo de nuevo. Gracias" +
"n";
alert(missinginfo);
return false;
}
else return true;
}
</script>
<title></title>
</head>
<body bgcolor="#669933"><center>
<%@include file="cabeceras.html"%></center>
<form name=form method=POST action=compras.jsp onSubmit="return checkFields()">
<table border=0>
<%-- <center> --%>
<tr>
<td><b>Nombre:</b></td>
<td><input type=text name="Nombre_usuario"size="20" ></td>
</tr>
<tr>
<td><b>Apellidos:</b></td>
<td><input type=text name="Apellidos_usuario"size="20" ></td>
</tr>
<tr>
<td><b>Código cliente:</b></td>
<td> <input name="Codigo_usuario" type=text id="Codigo_usuario"size="20" >
</td>
</tr>
<tr>
<td><b>Dirección:</b></td>
<td><input type=text name="direccion"size="20" ></td>
</tr>
<tr>
<td><b>Población:</b></td>
<td><input type=text name="Poblacion" size="20"></td>
</tr>
<tr>
<td><b>Provincia:</b></td>
<td><input type=text name="Provincia" size="20"></td>
</tr>
<tr>
<td><b>Código Postal:</b></td>
<td><input type=text name="CodigoPostal"size="20" ></td>
<tr>
<td><b>Número Teléfono:</b></td>
<td><input type=text name="Telefono" size="20"></td>
</tr>
<tr>
<td><b>E-Mail:</b></td>
<td><input type=text name="email_usuario"size="20" ></td>
</tr>
<tr>
<td><b>Dni:</b></td>
<td><input type=text name="Dni" size="20" ></td>
</tr>
<tr>
<td><b>Nº Tarjeta:</b></td>
<td><input type=text name="Tarjeta" size="20"></td>
</tr>
<tr>
<td><b>CCV:</b></td>
<td><input type=text name="CCV" size="20"></td>
</tr>
<tr>
<td><br>
<br><center>
<input name="button" type=button class=botones onClick=print() value=IMPRIMIR>
<input type=submit class=botones value=ENVIAR>
</center>
</td>
</tr>
</table>
</form>
<% String q="";
if(request.getParameter("Codigo_usuario")!=null && request.getParameter("Codigo_usuario")!=""){
String a=request.getParameter("Nombre_usuario");
String b=request.getParameter("Apellidos_usuario");
String c=request.getParameter("Codigo_usuario");
String d=request.getParameter("direccion");
String e=request.getParameter("Poblacion");
String f=request.getParameter("Provincia");
String g=request.getParameter("CodigoPostal");
String h=request.getParameter("Telefono");
String i=request.getParameter("email_usuario");
String j=request.getParameter("Dni");
String k=request.getParameter("Tarjeta");
String l=request.getParameter("CCV");
q+="insert into compras values('"+a+"','"+b+"','"+c+"','"+d+"','"+e+"','"+f+"','"+g+"','"+h+"','"+i+"','"+j+"','"+k+"','"+l+"')";
if(miBean.Update(q)>0){%>
<br><h1 align=center>
<jsp:forward page="confirmacion.jsp"/></h1>
<%}else{%>
<br><h1 align=center>NO SE HA REALIZADO EL ALTA CORRECTA</h1>
<% }
}%>
</body>
</html>
F_Tanori
Moderador
Mensajes: 1919
Nacionalidad:
Re: Error SQL Server insert
«
Respuesta #3 en:
Martes 20 de Julio de 2010, 02:56 »
0
Eso no podemos saberlo, porque no conocemos la estructura de tu tabla.
muestra la estructura de tu tabla
Saludos
" ExIsTo y A vEcEs PiEnSo "
NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================
bertamax
Nuevo Miembro
Mensajes: 22
Re: Error SQL Server insert
«
Respuesta #4 en:
Martes 20 de Julio de 2010, 18:28 »
0
Codigo_usuario varchar(50) Checked
Codigo_compra varchar(50) Unchecked
Nombre_usuario varchar(50) Checked
Apellidos_usuario varchar(50) Checked
Telefono varchar(50) Checked
email_usuario varchar(50) Checked
direccion varchar(MAX) Checked
Tarjeta varchar(50) Checked
CCV varchar(50) Checked
Poblacion varchar(50) Checked
Provincia varchar(50) Checked
CodigoPostal varchar(50) Checked
Dni varchar(50) Checked
Gracias
arielb
Moderador
Mensajes: 771
Nacionalidad:
Re: Error SQL Server insert
«
Respuesta #5 en:
Jueves 29 de Julio de 2010, 16:23 »
0
Según la estructura que muestras conté 13 campos
Código: SQL
Codigo_usuario
VARCHAR
(
50
)
Checked
Codigo_compra
VARCHAR
(
50
)
Unchecked
Nombre_usuario
VARCHAR
(
50
)
Checked
Apellidos_usuario
VARCHAR
(
50
)
Checked
Telefono
VARCHAR
(
50
)
Checked
email_usuario
VARCHAR
(
50
)
Checked
direccion
VARCHAR
(
MAX
)
Checked
Tarjeta
VARCHAR
(
50
)
Checked
CCV
VARCHAR
(
50
)
Checked
Poblacion
VARCHAR
(
50
)
Checked
Provincia
VARCHAR
(
50
)
Checked
CodigoPostal
VARCHAR
(
50
)
Checked
Dni
VARCHAR
(
50
)
Checked
y según la cadena que tienes solo conté 12, por lo que veo que no coiciden.
Código: SQL
q
+=
"insert into compras values('"
+
a
+
"','"
+
b
+
"','"
+
c
+
"','"
+
d
+
"','"
+
e
+
"','"
+
f
+
"','"
+
g
+
"','"
+
h
+
"','"
+
i
+
"','"
+
j
+
"','"
+
k
+
"','"
+
l
+
"')"
;
Si deseas hacer un insert con todos los campos de la tabla, lo puedes hacer con la sintaxis como la estás haciendo. Pero si los valores que quieres guardar son menos que la cantidad de campos que tiene la tabla, debes especificar los campos a utilizar que corresponda al valor (como lo explicó el amigo f_tanori).
Código: SQL
INSERT
INTO
tabla
(
campos
)
VALUES
(
valores
)
;
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16
http://coder-pa.blogspot.com
bertamax
Nuevo Miembro
Mensajes: 22
Re: Error SQL Server insert
«
Respuesta #6 en:
Sábado 31 de Julio de 2010, 19:35 »
0
Gracias.
He hecho esta modificación y me sigue dando error.
q+="insert into compras(Nombre_usuario, Apellidos_usuario, Codigo_usuario, direccion, Poblacion, Provincia, CodigoPostal, email_usuario, Dni, Tarjeta, CCV) values('"+a+"','"+b+"','"+c+"','"+d+"','"+e+"','"+f+"','"+g+"','"+h+"','"+i+"','"+j+"','"+k+"','"+l+"')";
arielb
Moderador
Mensajes: 771
Nacionalidad:
Re: Error SQL Server insert
«
Respuesta #7 en:
Domingo 1 de Agosto de 2010, 03:58 »
0
usa la opción debug para que veas el resultado final de la variable cuando se arma, y si no sabes usar el debug puedes imprimir la variable con
Código: Java
System
.
out
.
println
(
q
)
y el resultado lo pones acá. para ver como se terminando de construir la variable.
Por otro lado al momento de asignar a la variable q no es necesario que uses el signo más, ya que no estás acumulando.
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16
http://coder-pa.blogspot.com
arielb
Moderador
Mensajes: 771
Nacionalidad:
Re: Error SQL Server insert
«
Respuesta #8 en:
Domingo 1 de Agosto de 2010, 04:16 »
0
en la parte de los campos te faltó teléfono
Código: SQL
INSERT
INTO
compras
(
Nombre_usuario
,
Apellidos_usuario
,
Codigo_usuario
,
direccion
,
Poblacion
,
Provincia
,
CodigoPostal
,
email_usuario
,
Dni
,
Tarjeta
,
CCV
)
VALUES
(
'Nombre_usuario'
,
'Apellidos_usuario'
,
'Codigo_usuario'
,
'direccion'
,
'Poblacion'
,
'Provincia'
,
'CodigoPostal'
,
'Telefono'
,
'email_usuario'
,
'Dni'
,
'Tarjeta'
,
'CCV'
)
"Porque de tal manera amó Dios al mundo que dio a su hijo unigénito para que todo aquél que en él crea no se pierda mas tenga vida eterna"
Juan 3:16
http://coder-pa.blogspot.com
bertamax
Nuevo Miembro
Mensajes: 22
Re: Error SQL Server insert
«
Respuesta #9 en:
Lunes 2 de Agosto de 2010, 20:28 »
0
Muchas gracias
He echo la siguiente modificación:
q="insert into compras(Nombre_usuario, Apellidos_usuario, Codigo_usuario, direccion, Poblacion, Provincia, CodigoPostal, Telefono, email_usuario, Dni, Tarjeta, CCV) values('"+a+"','"+b+"','"+c+"','"+d+"','"+e+"','"+f+"','"+g+"','"+h+"','"+i+"','"+j+"','"+k+"','"+l+"')";
System.out.println(q);
El resultado es el siguiente:
Note: C:Documents and SettingsmariaMis documentosredesbuildgeneratedsrcorgapachejspcompras_jsp.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Java
»
JSP/Servlets
(Moderador:
arielb
) »
Error SQL Server insert