12
votes

Comment ajouter correctement les nouveaux enregistrements à un jeu d'enregistrements vides manuellement?

Comment ajouter de nouveaux enregistrements à un nouveau & vide adodb.recordsetsset manuellement?

En ce moment maintenant, voici ce que je fais cela ne fonctionne pas: xxx


0 commentaires

3 Réponses :


16
votes

in-place: xxx pré>

ou sur place plusieurs champs p> xxx pré>

ou en utilisant vars distincts p> Xxx pré>

Edit: Voici comment synthétiser un jeu d'enregistrements pour l'échantillon AddNew ci-dessus p> xxx pré>

J'utilise habituellement une fonction d'assistance Createrecordset Comme on le voit Cette réponse . P>

Mise à jour 2018-11-12 strong> p>

Vous pouvez également utiliser des index de terrain en tant qu'ordicales au lieu de noms de champs tels que des chaînes pour le tableau de champs comme celui-ci P>

rs.AddNew Array(0, 1), Array("SomeValue", 1234)


3 commentaires

Pourriez-vous inclure la déclaration et la préparation du jeu d'enregistrements avant l'appel AddNew ()? Je veux m'assurer que je fais tout ce qui doit être fait, pas plus et pas moins.


Quelle serait la meilleure façon d'exécuter une instruction SQL sur le jeu d'enregistrements, après la mise à jour de AddNew?


@Lobellin Ce jeu d'enregistrement latéral de la clientèle synthétique n'est pas persisté dans une SGBDM. Pensez-y comme une matrice 2D glorifiée. Il n'est pas possible d'exécuter des SQL car il n'y a pas de SGBDM.



6
votes
set rs = new ADODB.Recordset
rs.Open "Select SomeFieldName, AnotherFieldName FROM MyTable", myConnection, adOpenDynamic, adLockOptimistic

rs.AddNew
rs("SomeFieldName").Value = "SomeValue"
rs("AnotherFieldName").Value = 1
rs.Update

rs.AddNew
rs("SomeFieldName").Value = "AnotherValue"
rs("AnotherFieldName").Value = 2
rs.Update

rs.Close

0 commentaires

0
votes

avec une connexion ouverte Connector:

sSql="INSERT into mytable (somefieldname, anotherfieldname) values  ('Somevalue','Anothervalue')"
      Conn.Execute sSql


0 commentaires