Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Sql access - table locale

5 réponses
Avatar
alan
Bonjour,
j'utilise SQL SERVER (Tables) et access (Form et =E9tat)=20
via une connexion adodb. Je souhaiterai pouvoir=20
enregistrer le r=E9sultat dans une table sur access. Est-ce=20
possible ?=20
Merci pour vos diff=E9rentes suggestion

5 réponses

Avatar
Gafish
Bonjour,

Normalement oui, mais sois un peu plus précis. Que veux tu enregistrer ? Le
résultat d'une requête ?

Arnaud

"alan" a écrit dans le message news:
005501c4f9a4$55994f80$
Bonjour,
j'utilise SQL SERVER (Tables) et access (Form et état)
via une connexion adodb. Je souhaiterai pouvoir
enregistrer le résultat dans une table sur access. Est-ce
possible ?
Merci pour vos différentes suggestion
Avatar
Alan
Bonjour,
à partir d'un form connecté à ma base SQL, je
sélectionne les tarifs souhaités dans une listbox et je
souhaiterai intégrér le résultat de la requête dans une
table sur ACCESS. voici le code :
Private Sub Form_Load()
Dim rs As New ADODB.Recordset
Dim varI As Variant
Dim strFiltre As String
Dim SQL As String
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
Set cn = New ADODB.Connection

strFiltre = ""
With cn
.Provider = "Microsoft.Access.OLEDB.10.0"
.Properties("Data Provider").Value = "SQLOLEDB"
.Properties("Data Source").Value = "INTRA"
.Properties("User ID").Value = "sa"
.Properties("Password").Value = ""
.Properties("Initial Catalog").Value = "SAI_GCCOM"
.Open
End With
If Forms!select_tarif!LISTE_TARIF.ItemsSelected.Count = 0
Then
MsgBox "Aucun tarif n'a été sélectionné"
Else
For Each varI In Forms!select_tarif!
LISTE_TARIF.ItemsSelected
If strFiltre <> "" Then strFiltre = strFiltre & "
OR "
strFiltre = strFiltre & "[PRX_VALEUR]='" & _
Forms!select_tarif!LISTE_TARIF.ItemData(varI)
& "'"
Next varI
End If

SQL = "SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"
With rs
Set .ActiveConnection = cn
.Source = SQL
.LockType = adLockOptimistic
.CursorType = adOpenKeyset
.Open
End With
Set Me.Recordset = rs

rs.Close
Set rs = Nothing
End Sub
Avatar
Gafish
Donc tu veux intégrer le résultat de la requête en bas de ton code dans une
nouvelle table ?
Si oui, il te suffit de rajouter dans le sql de cette requête INTO LaTable
avant le FROM Tarif, donc en gros :

SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR, TARIF.PRX_DATE_DEB,
TARIF.PRX_DATE_FIN, TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV
INTO TaNouvelleTable
FROM TARIF

Arnaud

"Alan" a écrit dans le message news:
02b501c4fa16$d4d5ea70$
Bonjour,
à partir d'un form connecté à ma base SQL, je
sélectionne les tarifs souhaités dans une listbox et je
souhaiterai intégrér le résultat de la requête dans une
table sur ACCESS. voici le code :
Private Sub Form_Load()
Dim rs As New ADODB.Recordset
Dim varI As Variant
Dim strFiltre As String
Dim SQL As String
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
Set cn = New ADODB.Connection

strFiltre = ""
With cn
.Provider = "Microsoft.Access.OLEDB.10.0"
.Properties("Data Provider").Value = "SQLOLEDB"
.Properties("Data Source").Value = "INTRA"
.Properties("User ID").Value = "sa"
.Properties("Password").Value = ""
.Properties("Initial Catalog").Value = "SAI_GCCOM"
.Open
End With
If Forms!select_tarif!LISTE_TARIF.ItemsSelected.Count = 0
Then
MsgBox "Aucun tarif n'a été sélectionné"
Else
For Each varI In Forms!select_tarif!
LISTE_TARIF.ItemsSelected
If strFiltre <> "" Then strFiltre = strFiltre & "
OR "
strFiltre = strFiltre & "[PRX_VALEUR]='" & _
Forms!select_tarif!LISTE_TARIF.ItemData(varI)
& "'"
Next varI
End If

SQL = "SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"
With rs
Set .ActiveConnection = cn
.Source = SQL
.LockType = adLockOptimistic
.CursorType = adOpenKeyset
.Open
End With
Set Me.Recordset = rs

rs.Close
Set rs = Nothing
End Sub
Avatar
alan
je ne veux pas créer de nouvelle table mais insérer le
résultat de la requete effectués sous SQL SERVER dans une
tables sur ACCESS qui s'appelle TMP_TARIF :
La table TARIF est sur SQL SERVER et TMP_TARIF sur access
:
mais il m'indique que le recodset à échoué
SQL = "INSERT INTO TMP_TARIF ( PRX_TYPE, PRX_VALEUR,
PRX_DATE_DEB, PRX_DATE_FIN, PRX_CODART, PRX_PRIX,
PRX_UV) "
SQL = SQL + "select TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"

-----Message d'origine-----
Donc tu veux intégrer le résultat de la requête en bas
de ton code dans une

nouvelle table ?
Si oui, il te suffit de rajouter dans le sql de cette
requête INTO LaTable

avant le FROM Tarif, donc en gros :

SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB,

TARIF.PRX_DATE_FIN, TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV
INTO TaNouvelleTable
FROM TARIF

Arnaud

"Alan" a écrit
dans le message news:

02b501c4fa16$d4d5ea70$
Bonjour,
à partir d'un form connecté à ma base SQL, je
sélectionne les tarifs souhaités dans une listbox et je
souhaiterai intégrér le résultat de la requête dans une
table sur ACCESS. voici le code :
Private Sub Form_Load()
Dim rs As New ADODB.Recordset
Dim varI As Variant
Dim strFiltre As String
Dim SQL As String
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
Set cn = New ADODB.Connection

strFiltre = ""
With cn
.Provider = "Microsoft.Access.OLEDB.10.0"
.Properties("Data Provider").Value = "SQLOLEDB"
.Properties("Data Source").Value = "INTRA"
.Properties("User ID").Value = "sa"
.Properties("Password").Value = ""
.Properties("Initial Catalog").Value = "SAI_GCCOM"
.Open
End With
If Forms!select_tarif!LISTE_TARIF.ItemsSelected.Count = 0
Then
MsgBox "Aucun tarif n'a été sélectionné"
Else
For Each varI In Forms!select_tarif!
LISTE_TARIF.ItemsSelected
If strFiltre <> "" Then strFiltre = strFiltre & "
OR "
strFiltre = strFiltre & "[PRX_VALEUR]='" & _
Forms!select_tarif!LISTE_TARIF.ItemData(varI)
& "'"
Next varI
End If

SQL = "SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"
With rs
Set .ActiveConnection = cn
.Source = SQL
.LockType = adLockOptimistic
.CursorType = adOpenKeyset
.Open
End With
Set Me.Recordset = rs

rs.Close
Set rs = Nothing
End Sub



.



Avatar
Robert Parise
Quel est le format de ta base Access: .mdb / .mde ou .adp / .ade

Robert


"alan" a écrit dans le message de
news: 0f0b01c4fa1c$8e1dea50$
je ne veux pas créer de nouvelle table mais insérer le
résultat de la requete effectués sous SQL SERVER dans une
tables sur ACCESS qui s'appelle TMP_TARIF :
La table TARIF est sur SQL SERVER et TMP_TARIF sur access
:
mais il m'indique que le recodset à échoué
SQL = "INSERT INTO TMP_TARIF ( PRX_TYPE, PRX_VALEUR,
PRX_DATE_DEB, PRX_DATE_FIN, PRX_CODART, PRX_PRIX,
PRX_UV) "
SQL = SQL + "select TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"

-----Message d'origine-----
Donc tu veux intégrer le résultat de la requête en bas
de ton code dans une

nouvelle table ?
Si oui, il te suffit de rajouter dans le sql de cette
requête INTO LaTable

avant le FROM Tarif, donc en gros :

SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB,

TARIF.PRX_DATE_FIN, TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV
INTO TaNouvelleTable
FROM TARIF

Arnaud

"Alan" a écrit
dans le message news:

02b501c4fa16$d4d5ea70$
Bonjour,
à partir d'un form connecté à ma base SQL, je
sélectionne les tarifs souhaités dans une listbox et je
souhaiterai intégrér le résultat de la requête dans une
table sur ACCESS. voici le code :
Private Sub Form_Load()
Dim rs As New ADODB.Recordset
Dim varI As Variant
Dim strFiltre As String
Dim SQL As String
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
Set cn = New ADODB.Connection

strFiltre = ""
With cn
.Provider = "Microsoft.Access.OLEDB.10.0"
.Properties("Data Provider").Value = "SQLOLEDB"
.Properties("Data Source").Value = "INTRA"
.Properties("User ID").Value = "sa"
.Properties("Password").Value = ""
.Properties("Initial Catalog").Value = "SAI_GCCOM"
.Open
End With
If Forms!select_tarif!LISTE_TARIF.ItemsSelected.Count = 0
Then
MsgBox "Aucun tarif n'a été sélectionné"
Else
For Each varI In Forms!select_tarif!
LISTE_TARIF.ItemsSelected
If strFiltre <> "" Then strFiltre = strFiltre & "
OR "
strFiltre = strFiltre & "[PRX_VALEUR]='" & _
Forms!select_tarif!LISTE_TARIF.ItemData(varI)
& "'"
Next varI
End If

SQL = "SELECT TARIF.PRX_TYPE, TARIF.PRX_VALEUR,
TARIF.PRX_DATE_DEB, TARIF.PRX_DATE_FIN, "
SQL = SQL + "TARIF.PRX_CODART,TARIF.PRX_PRIX,
TARIF.PRX_UV FROM TARIF "
SQL = SQL + "WHERE TARIF.PRX_DATE_DEB = '" & (Forms!
select_tarif!LISTE2.Value) & "' and (" & strFiltre & ")"
With rs
Set .ActiveConnection = cn
.Source = SQL
.LockType = adLockOptimistic
.CursorType = adOpenKeyset
.Open
End With
Set Me.Recordset = rs

rs.Close
Set rs = Nothing
End Sub



.