InicioArticulos y noticiasBases de datosProgramaciónForosInternetServiciosEmail
SQL
  Tutorial SQL
SQL Server
  Tutorial de Transact-SQL
ORACLE
  Tutorial PL/SQL
.NET
  Introducción a.NET
  Conceptos generales .NET
  Tutorial C#
  LinQ
Reina Roja
  Humor
  Bibliografia
  Acerca de ...

Afiliados
La Web del programador
MundoProgramacion

Inserción de datos desde formulario
tema iniciado por Broken
Mensaje recibido el [11/07/2005 04:11:23]


Hola a todos:

Antes de nada, dar mi enhorabuena por la web, los contenidos son realmente interesantes.

Os cuento mi problema, tengo un formulario de altas en el que tengo 13 campos, todos cajas de texto. De estos 13 campos, 7 son obligatorios (contando la PK, que la inserto yo) y al hacer el INSERT la sentencia sql queda de esta manera: 

          INSERT INTO OFICINAS VALUES(SEQ.NEXTVAL,'TEXTO1','TEXTO2',,1,'TEXTO3','','','','','','TEXTO4',1)

Pues bien, al lanzar el EXECUTE (utilizo Oracle 9i) me devuelve el siguiente mensaje:                 ERROR en línea 14:
ORA-00936: falta una expresión

Entonces, ¿cómo se puede hacer?¿Se podría montar alguna manera de introducir NULL en los campos que me hayan dejado vacíos? He comprobado que si introduzco NULL en el INSERT en aquellos campos que van vacíos, realiza la inserción perfectamente.

Espero haberme explicado bien.

Muchas gracias y un saludo...


 RE: Inserción de datos desde formulario por Devjoker [12/07/2005 02:49:58]
 RE: Inserción de datos desde formulario por Broken [12/07/2005 05:2:05]
 RE: Insercion de datos desde formulario por El_Primo [12/07/2005 07:29:16]

 
RE: Inserción de datos desde formulario por Devjoker
Respuesta recibida el [12/07/2005 02:49:58]

Cauando montes la sentencia SQL utiliza la expresion NULL.

Fijate , tu montas la siguiente SQL:

INSERT INTO OFICINAS VALUES(SEQ.NEXTVAL,'TEXTO1','TEXTO2',,1,'TEXTO3','','','','','','TEXTO4',1)

y lo que debes tener en tu string antes de ejecutar es:

INSERT INTO OFICINAS VALUES(SEQ.NEXTVAL,'TEXTO1','TEXTO2',null,1,'TEXTO3','','','','','','TEXTO4',1)

De todos modos te recomiendo que utilices objetos ADODB.Command con parámetros.

Saludos,


 
RE: Inserción de datos desde formulario por Broken
Respuesta recibida el [12/07/2005 05:02:05]

Eso ya lo había probado y efectivamente funciona. El INSERT lo ejecuto en un procedimiento genérico y lo que quería evitar era estar preguntando en ese proc. por todos y cada uno de los campos del formulario, supongo que es inevitable. Otra cosa que se me ocurre es montar la cadena antes de la llamada al procedimiento, asi, una vez dentro del procedimiento solo tendría que escribir:

CN.EXECUTE sqlstr

dónde "sqlstr" lo recibo como parámetro de tipo string.

¿Es esto correcto?

Muchas gracias nuevamente,

Un saludo


 
RE: Insercion de datos desde formulario por El_Primo
Respuesta recibida el [12/07/2005 07:29:16]

Por supuesto que puedes hacer eso.

Salu2



 

Email:*
Alias:*
Título:*
Respuesta:*
Notificar:
(Indica si queremos recibir emails)

 
 

devjoker  Te recomendamos además ...
02/10/2006 Tablas unidimensionales    forma parte de...Tutorial C#
03/01/2007 Tipos anulables    forma parte de...Tutorial C#
31/03/2006 Fundamentos de PL/SQL    forma parte de...Tutorial PL/SQL
03/10/2006 Miembros de tipo    forma parte de...Tutorial C#
21/07/2006 Funciones integradas de PL/SQL    forma parte de...Tutorial PL/SQL
28/08/2006 Ubuntu en VmWare con VMware Tools
22/10/2005 Insertar datos. INSERT    forma parte de...Tutorial SQL
24/05/2007 Tipos de datos en Transact SQL    forma parte de...Tutorial de Transact SQL
12/01/2006 Programación con PL/SQL    forma parte de...Tutorial PL/SQL
16/10/2006 Delegados y eventos    forma parte de...Tutorial C#

Encuesta
¿Cual es tu lenguaje de programación favorito?
[Ver] [Votar]