Como inserto datos a traves de SQL en visual basic?

Alexforo
12 de Febrero del 2004
Hola Alguien me puede decir como insertar datos a una base de datos a traves de SQL en Visual Basic presionando un boton si tengo 4 text( uno es para el nombre de la persona, otro es para el domicilio, otro para la colonia y el otro para codigo postal)

Que control de base de datos uso debo usar ya que uso mucho el control Data, miren tengo una idea de que es esta instruccion y que aplicaria dentro del boton command


"INSERT INTO clientes(nombre, domicilio, colonia, cp) VALUES( ' " & text1.text & " ', ' " & text2.text & " ' , ' " & text3.text & " ' , ' " & text4.text & " ' ) "

Pero no se si me falta declarar variables o usar controles, ayudenme por favor, Gracias

pco_barny
12 de Febrero del 2004
te expico una forma de hacerlo, hay varias:
en el evento click del command buton haces o siguiente
primero creas un objeto connection
dim Con as ADODB.Connection
Set Con = New ADODB.Connection

'cadena de conexión y abrimos la conexión
Con.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:ruta_de_la_base de datos;Persist Security Info=False"
Con.Open

'sentencia SQL para insertar el registro
insSQL = "INSERT INTO...." (tu sentencia SQL está bien pero esos paréntesis que tienes detrás de clientes sobran, es decir quedaría así "INSERT INTO clientes VALUES (campos por orden separados por comas)"

Con.Execute insSQL

despues acuerdate de borrar el objeto coneccion
Con.Close
set Con = nothing

con esto ya deberia agregar el registro
Espero te sirva

pco_barny
12 de Febrero del 2004
se me olvido una cosa, supongo que la base de datos será de Access no? poque la cadena de conexión esta establecida para Accesss. Si tieens algún problema no dudes en preguntarme

Alexforo
12 de Febrero del 2004
Gracias Barny lo que me dijiste si me fue de ayuda, respecto a lo que me decias que me sobraba mucha instruccion SQL

insSQL = "INSERT INTO clientes(nombre, calle, numero) VALUES( '" & Text1.Text & " ',...) ......."

el INSERT INTO clientes le espcifico que campos quiero porque tengo un campo ID Autonumerico y si no le especifico me marca error("El numero de valores consulta y el numero de campos destino es diferente") , hay alguna forma de que los inserte si especificar los campos teniendo un ID autonumerico ?

Por cierto si estoy usando access

Te agradezco mucho gracias