Access - Problemas con syntaxis SQL (access)

 
Vista:
sin imagen de perfil

Problemas con syntaxis SQL (access)

Publicado por Leo (15 intervenciones) el 20/02/2017 21:58:48
Buenas:


Tengo mucho rato dandome cabezados con esta syntaxis espero que puedan ayudarme

DoCmd.RunSQL ("INSERT INTO " & Tbl_Item_Filtro1 & _
"SELECT [" & Me.Campo1.Value & "]" & _
"FROM " & sResult & "GROUP BY " & sResult & ".[" & Me.Campo1.Value & "];")

no consigue entender donde viene el error

Espero su ayuda

Saludos


Leonard
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
Imágen de perfil de jorge
Val: 1.039
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Problemas con syntaxis SQL (access)

Publicado por jorge (304 intervenciones) el 20/02/2017 23:12:06
hola leo no se realemente que quieres hacer pero para inserta datos de aun tabla campo independientes la sintaxis es asi

DoCmd.SetWarnings False

DoCmd.RunSQL "INSERT INTO [DETALLESSALIDA]([IDPEDIDO],[IDOBRA],[CLAVE],[MATERIAL],[DESCRIPCION],[UNIDADES],[CANTIDAD])VALUES('" & Me.IDPEDIDO & "','" & Me.IDOBRA & "','" & Me.CLAVE & "','" & Me.MATERIAL & "','" & Me.DESCRIPCION & "','" & Me.UNIDADES & "','" & Me.CANTIDAD & "');"

en esta consulta yo estoy insertartando datos a tabla de detalles de salida.., pero antes desavilita la adevertencia para que no me aparesca que se van anexar a dicha tabla despues puedes poner un Me.Refresh sii esqe quieres que se vean las actualizaciones en tiempo real.

saludos leoo estamos para apoyarnos
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
sin imagen de perfil

Problemas con syntaxis SQL (access)

Publicado por Leonard (15 intervenciones) el 21/02/2017 02:56:05
Gracias por la ayuda me aclara en parte
pero tienes razon debo explicarme mejor

lo que quiero es insertar en una tabla Tbl_Item_Filtro1 los valores que consigo en un query donde selecciono una columna , pero agrupado para eliminar posible duplicados, consegui un ejemplo en internet pero no logro ajustarlo a la estructura exigida en access, adicionalmente a eso los datos del query son variables. esto con la finalidad de que la tabla Tbl_Item_Filtro1 alimente un combobox que servira de condicion de filtro para una consulta posterior.

1
2
3
4
5
6
7
8
sResult nombre de la tabla = "Dataproducto"
Me.campo1. Value = nombre del campo a buscar informacion
Tbl_Item_Filtro1 = donde se guarda la informacion
 
 sTable = sResult & ".'[" & Me.Campo1.Value & "]';"
   cuenta = "'[" & sResult & "]'"
    DoCmd.RunSQL "INSERT INTO [Tbl_Item_Filtro1]" & _
    "FROM " & cuenta & " GROUP BY " & sTable & ")"



ejemplo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Dim dbs As Database
 
    ' Modify this line to include the path to Northwind
    ' on your computer.
    Set dbs = OpenDatabase("Northwind.mdb")
 
    ' Select all records in the New Customers table 
    ' and add them to the Customers table.
    dbs.Execute " INSERT INTO Customers " _
        & "SELECT * " _
        & "FROM [New Customers];"
 
    dbs.Close
 
End Sub

Espero puedas ayudarme nuevamente
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
Imágen de perfil de Jorge
Val: 1.039
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Problemas con syntaxis SQL (access)

Publicado por Jorge (304 intervenciones) el 21/02/2017 03:09:32
Aver si te entendí con un código mandas traer la información de una tabla a unos campos de de un formulario y después quieres insertr ??
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
sin imagen de perfil

Problemas con syntaxis SQL (access)

Publicado por Leonard (15 intervenciones) el 21/02/2017 03:23:15
No exactamente, Con un recordset busco los nombre de los campos de la tabla que usuario desea utilizar, con otro recordset anidado busco los valores que estan dentro del campo que el usuario ya eligio, y de una vez esos datos lo inserto en una tabla para que el usuario pueda posteriormente desde un combobox pueda eligir el item dentro del campo que ya eligio previamente , estos datos sera utilizados luego seran una para obtener valores con otro rutina (todavia no llego alli), pero el hecho de usar recordset hacer que el proceso se ralentice y deja de ser eficiente.

de hecho lo hice con un recordset y me funciona, pero cuando lee archivo muy grande deja de ser eficiente, ya que leo uno a uno, por eso estoy buscando la opcion de un insert, de modo de hacerlo mucho mas ligero el proceso


Saludos


Leonard

Gracias por tu atencion
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
Imágen de perfil de Jorge
Val: 1.039
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Problemas con syntaxis SQL (access)

Publicado por Jorge (304 intervenciones) el 21/02/2017 03:28:59
Pon una imagen saludos
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
sin imagen de perfil

Problemas con syntaxis SQL (access)

Publicado por Leonard (15 intervenciones) el 21/02/2017 03:37:02
Problema-sql-syntax


Aqui va


Saludos
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
sin imagen de perfil

Problemas con syntaxis SQL (access)

Publicado por Leonard (15 intervenciones) el 21/02/2017 03:54:22
Sino se ve bien el codigo aqui lo mando

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Dim rs, rs1 As DAO.Recordset
    Dim n As Long
    Dim x As Long
    Dim sResult As String
 
     If Me.Combo545.Value = "" Then
       Exit Sub
    End If
 
'Colocamos el el dato en el campo filtro
 
Me.Campo1 = Me.Combo556.Value
 
'Determinamos los items que vamos filtrar item1
 
 
    DoCmd.SetWarnings False
 
        DoCmd.OpenQuery "Qry_Delete_Item_Filtro1"
 
    DoCmd.SetWarnings True
 
    sResult = "DataProducto"
 
    Set rs = CurrentDb.OpenRecordset(sResult)
    rs.MoveLast
    x = rs.RecordCount
    rs.MoveFirst
 
    'AQUI ES EL SQL QUE QUIERO HACER
 
     sTable = sResult & ".'[" & Me.Campo1.Value & "]';"
    cuenta = "'[" & sResult & "]'"
 
     DoCmd.RunSQL "INSERT INTO [Tbl_Item_Filtro1]" & _
    "FROM " & cuenta & " GROUP BY " & sTable & ")"
 
  ' AQUI YA ESTA EL PROCESO FUNCIONANDO CON RECORDSET
 
  With rs
       For n = 0 To x - 1
      Set rs1 = CurrentDb.OpenRecordset("Tbl_Item_Filtro1")
       If rs.Fields(Me.Campo1.Value) <> "" Then
        rs1.AddNew
        rs1!Item_Filtro1 = rs.Fields(Me.Campo1.Value)
        rs1.Update
        End If
       rs1.Close
       Set rs1 = Nothing
        rs.MoveNext
       Next 'n
       .Close
    End With
 
   Set rs = Nothing
   sResult = ""
   n = 0
   x = 0
 
    Me.Refresh
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
Imágen de perfil de Jorge
Val: 1.039
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Problemas con syntaxis SQL (access)

Publicado por Jorge (304 intervenciones) el 21/02/2017 18:02:22
Yoo me refería a un imagen de la interfaz de formulario para ver si se podía hacer de una forma más sencilla saludos leoo aún soy novato pero investigando quizás podamos sacar tu duda adelante saludos cordiales amigo
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

Problemas con syntaxis SQL (access)

Publicado por Eloy (1 intervención) el 21/02/2017 03:38:04
No veo bien,, para que muestras la informacion si luego la llevas a una tabla, pero bueno, para que te funcione, los campos de la tabla donde insertan y los de la consulta deben ser la misma cantidad.... solo si estas seguro que esta condicion se cumple puedes ponerla sin la lista de campos a de llenas, en caso contrario deve ir la lista de los campos destino y estos deben coincidir en tipo o ser equivalentes en tipo uno a uno con los campos del select ...
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