Modifier plusieurs lignes simultanément avec 1 chaîne aléatoire ds 1 bd

Description

Un code pratique qui permet de mettre à jour des milliers de lignes simultanément. Cet exemple montre comment mettre à jour plusieurs lignes en même temps avec une chaîne aléatoire par exemple.

Source / Exemple :


<%@LANGUAGE="VBSCRIPT"%>
<html>
<head>
<title>Insérer une chaîne aléatoire dans une base de données</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<%
' un code pratique qui permet de mettre à jour des milliers de lignes simultanément

' Fonction qui génère un code aléatoire
	function code()
	codealea = ""
	' On mélange --> aléatoire
	Randomize
	For i = 1 to 8 ' <-- choisissez la longueur de la chaîne !
	intNum = Int(10 * Rnd + 48)
	intUpper = Int(26 * Rnd + 65)
	intLower = Int(26 * Rnd + 97)
	intRand = Int(3 * Rnd + 1)
	Select Case intRand
	Case 1
	strCode = Chr(intNum)
	Case 2
	strCode = Chr(intUpper)
	Case 3
	strCode = Chr(intLower)
	End Select
	' strCode est composé de chiffres, minuscules et majucules. on ajoute un a un les réultats de strCode
	codealea = codealea & strCode
	Next
	end function

	' on fait la connection à la base
	Set conn = Server.CreateObject("ADODB.Connection")
    conn.open "votre_base","",""
	' une requête simple pour écrire au bon endroit et compter le nombre de lignes
	sql = "select * from table"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn, 3, 3
	' Début de la boucle
	rs.movefirst
	do while not rs.eof 
		laligne = rs.fields("n") 'permet de mettre dans la variable laligne le bon numéro de ligne
		' on appelle la fonction code()								 
		code()
		' une deuxième requête simple qui met à jour 
		sql2 = "UPDATE table SET le_champ = '" & codealea & "' where n like '"& laligne &"'"
		Set rs2 = Server.CreateObject("ADODB.Recordset")
		rs2.Open sql2, conn, 3, 3
  	rs.movenext
	loop
	' Fin de la boucle
response.write ("C'est fini") 'Voici une ligne complètement inutile, à part si vous n'êtes pas sûr que ça marche
%>
</body>
</html>

Conclusion :


Pensez à remplacer votre_base par le nom de votre base de données indiquée ds l'ODBC et les noms des champs de votre table (table, n).
Vous pouvez bien sûr mettre la chaîne de votre choix en remplaçant la ligne
code() par codealea = "ce_que_je_veux"
voilà !

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.