Dans MS Access, je souhaite insérer une nouvelle colonne dans le résultat renvoyé d'une requête de sélection. La nouvelle colonne a la même valeur pour chaque ligne. Par exemple, ma sélection renvoie les colonnes A, B et je veux que C soit la nouvelle colonne créée par la requête de sélection:
A B C
----------
a1 b1 c
a2 b2 c
a3 b3 c
select A, B, 'c' as C
from MyTable
SELECT field1, field2, 'example' AS newfield FROM TABLE1 Ceci ajoutera une colonne appelée "newfield" à la sortie, et sa valeur sera toujours "example".
Cela dépend de ce que vous vouliez faire avec cette colonne, par exemple voici un exemple d'ajout d'une nouvelle colonne à un jeu d'enregistrements qui peut être mis à jour côté client:
Sub MSDataShape_AddNewCol()
Dim rs As ADODB.Recordset
Set rs = CreateObject("ADODB.Recordset")
With rs
.ActiveConnection = _
"Provider=MSDataShape;" & _
"Data Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Tempo\New_Jet_DB.mdb"
.Source = _
"SHAPE {" & _
" SELECT ExistingField" & _
" FROM ExistingTable" & _
" ORDER BY ExistingField" & _
"} APPEND NEW adNumeric(5, 4) AS NewField"
.LockType = adLockBatchOptimistic
.Open
Dim i As Long
For i = 0 To .RecordCount - 1
.Fields("NewField").Value = Round(.Fields("ExistingField").Value, 4)
.MoveNext
Next
rs.Save "C:\rs.xml", adPersistXML
End With
End Sub