Qu'il s'agisse de rs.open sql, conn ou conn.execute(sql) [SQL ici est delete, update, insert] après l'exécution, un jeu d'enregistrements fermé sera renvoyé rs.open sql, conn : Si sql est delete, update. , insert Un jeu d'enregistrements fermé sera renvoyé Pendant l'utilisation, n'écrivez pas rs.close puis écrivez rs.close à la fin du fichier.
Il peut y avoir plusieurs jeux d'enregistrements rs1.open sql1,conn au milieu, et le dernier ferme le jeu d'enregistrements : rs.close rs1.close
conn.execute(sql) Si sql est supprimé, mis à jour ou inséré, il renverra un jeu d'enregistrements fermé. N'utilisez pas rs.close pendant l'utilisation et écrivez rs.close à la fin du fichier.
Il peut y avoir plusieurs jeux d'enregistrements au milieu : rs1.open sql1,conn, et le dernier ferme le jeu d'enregistrements : rs.close rs1.close.
Si le SQL est mis à jour, inséré, supprimé, vous devez utiliser conn.execute(sql) ou vous pouvez omettre les crochets conn.execute sql
Si sql est une instruction select, vous devez utiliser set rs=conn.execute(sql). Les crochets doivent être obligatoires et ne peuvent pas être omis : cela est dû aux caractéristiques de vbscript, avec une valeur de retour.
L'appel doit être mis entre parenthèses et l'appel sans valeur de retour n'a pas besoin de parenthèses.
Remarque : Qu'il s'agisse de rs.open sql, conn ou conn.execute(sql) [SQL ici est delete, update, insert], un jeu d'enregistrements fermé sera renvoyé après l'exécution.
En d'autres termes, si sql est une instruction d'insertion, de mise à jour ou de suppression, alors le RS dans l'ensemble rs=conn.execute(sql) n'a aucune signification.
1.conn.exécuter
sql=select * de l'administrateur où username='xiaozhu'
définir rs=conn.execute(sql)
Fermer automatiquement l'ensemble d'enregistrements après l'exécution
Enfin, il vous suffit de fermer la connexion
connexion.fermer
définir conn = rien
2.rs.ouvert
définir rs=server.createobject(adodb.recordset)
sql=select * de l'administrateur où username='xiaozhu'
rs.open sql, conn, 1,1
Vous pouvez définir vous-même certains paramètres, à savoir les méthodes de verrouillage et de déplacement du curseur.
Enfin, fermez le jeu d'enregistrements et la connexion
rs.fermer
définir rs = rien
connexion.fermer
définir conn = rien
3.commande.exécuter
sql=select * de l'administrateur où username='xiaozhu'
définir rs=command.execute(sql)
************************************************** * ****************************
1.
set rs=conn.execute (s'il s'agit d'une instruction select) obtient rs.recordcount=-1
rs.open sql,conn (sql est une instruction select) Le rs.recordcount obtenu est le nombre normal d'enregistrements
2.
rs.open consiste à ouvrir la base de données conn.execute consiste à exécuter des instructions SQL
set rs=conn.execute(insert,update,delete) renvoie un jeu d'enregistrements fermé
set rs=conn.execute(select) renvoie un jeu d'enregistrements non fermé
3.
CONN.EXECUTE (SQL, Lignes affectées, C)
Signification du paramètre :
La valeur de SQL peut être une instruction SQL, un nom de table, un nom de procédure stockée ou toute chaîne acceptable par le fournisseur de données. Pour améliorer les performances, il est préférable de spécifier des valeurs appropriées pour les paramètres C
Le paramètre facultatif RowsAffected renverra le numéro concerné après l'exécution de la requête INSERT, UPDATE ou DELETE. Ces requêtes renverront un objet Recordset fermé.
Une requête SELECT renverra une valeur RowsAffected de -1 et renverra un Recordset ouvert avec une ou plusieurs lignes de contenu.
4.
conn.execute sql peut être utilisé lorsqu'il n'est pas nécessaire de renvoyer un objet recordset, tel que le code suivant :
sql=supprimer de enews où id=&cstr(id)
conn.exécuter SQL
Si vous devez renvoyer un objet recordset, utilisez le code suivant :
sql=sélectionner depuis enews où id=&cstr(id)
définir rs = conn.execute(sql)
Si vous supprimez les crochets ici dans execute(sql) (c'est-à-dire set rs = conn.execute sql), un message d'erreur s'affichera, indiquant que l'instruction n'est pas terminée. J'ai regardé le format de syntaxe et j'ai constaté qu'il y en avait deux. formats. Les détails sont les suivants :
Format 1 : Nom de l'objet de connexion. Exécuter (commande SQL).
Format 2 : Nom de l'objet de connexion.Execute (nom de la table de données).
Comme le montre le format ci-dessus, les instructions SQL après l'exécution sont incluses entre parenthèses, mais en fait, si vous effectuez des opérations telles que la suppression ou la modification, vous n'avez pas besoin d'inclure les instructions SQL entre parenthèses pour les exécuter correctement. est-ce? Pour exécuter la requête, vous devez inclure la commande sql entre parenthèses, sinon une erreur se produira. J'ai lu tous les didacticiels ASP disponibles et aucun d'entre eux n'a mentionné ce problème. J'ai cherché et trouvé aucune réponse. Veuillez me donner quelques conseils. sur la raison. Ne parlez pas seulement des règles de grammaire, j'espère obtenir la bonne réponse, merci.