Access - Insertar columnas con codigo

   
Vista:

Insertar columnas con codigo

Publicado por Adolfo (98 intervenciones) el 12/02/2008 18:01:26
hola a todos, ya sta para hacer tablas con codigo, ara para.... añadire las columnas aver si sabe alguien.
--Esto es para crear tabla--
Dim ssql As String
ssql = "CREATE TABLE cliente" & IdCliente
------------------------------------------
--Esto es lo que e puesto yo que no sirve de nada (me da error)--
ssql= Select [Id]AS expr1, [Nombre] AS Expr2, [Apellidos] as Expr3, [Telefono] as expr4, [telefono2] as expr5 INTO cliente
& IdCliente
CurrentDb.Execute ssql
----------------------------------------
Si alguien sabe meter columnas en una tabla vacia avisar :)
gracias.

-Adolfo-
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Insertar columnas con codigo

Publicado por Enrique (1299 intervenciones) el 12/02/2008 18:43:10
Hola Adolfo:
Para agregar campos a una Tabla, por ejemplo al pulsar un botón de comando de nombre "AgregarCampos":

Private Sub AgregarCampos_Click()
On Error Resume Next
Dim SQL As String
SQL = "ALTER TABLE Cliente " & "ADD COLUMN Nombre TEXT (30), COLUMN Apellidos TEXT (60), COLUMN Telefono TEXT(9), COLUMN Telefono2 TEXT(9)"
CurrentDb.Execute SQL
MsgBox " Los Nuevos Campos han sido" & Chr(10) & _
"agregados a la Tabla Cliente.", vbInformation, "Agregar campos"
End Sub

Con la instrucción CREATE TABLE tambien se pueden crear nuevas Tablas y añadirle al mismo tiempo los campos que necesites, ejemplo:

Private Sub CrearTabla_Click()
On Error Resume Next
Dim SQL As String, db As Database, qd As QueryDef
SQL = "CREATE TABLE Cliente (IDCliente COUNTER CONSTRAINT IndicePrimario PRIMARY KEY, Nombre TEXT (30), Apellidos TEXT (60), FechaNacimiento DATETIME, DNI TEXT (10), Direccion TEXT (50));"
Set db = DBEngine.Workspaces(0).Databases(0)
Set qd = db.CreateQueryDef("")
qd.SQL = SQL
qd.Execute
db.Close
MsgBox " La Tabla 'Cliente' ha sido creada.", vbInformation, "Creación de Tabla"
End Sub

Con COUNTER CONSTRAINT se crea un campo Indice Primario Automumérico, pero si solo necesitas que sea Numérico y ademas sea Indice Primario, cambia COUNTER por INTEGER.

A ver si te sirve esto. Saludos
Enrique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Insertar columnas con codigo

Publicado por Adolfo (98 intervenciones) el 13/02/2008 12:19:25
me a servido algo parecido a eso, gracias.
para introducir datos tengo :
ssql = "INSERT INTO cliente" & IdCliente & "(Id_cliente, nombre, apellidos, Telefono, Telefono2, Otros) VALUES (" & IdCliente & " , "" & caja_nombre & "" , "" & apellidos & "", "" & Telefono & "" , "" & Telefono2 & "" , "" & otros & "" )"
CurrentDb.Execute ssql

y me funciona asta IDcliente, esa se rellena bien, xo el resto me aparece escrito en la tabla " & caja_nombre & " | " & apellidos & " en vez de el valor de cada campo.

alguien sabe pq ?
grax again.

-Adolfo-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar