Question Powershel l& MySQL LAST_INSERT_ID

Plus d'informations
il y a 9 ans 6 mois #22265 par Roninjin
Bonjour,

Lorsque j'essaie de faire un insert avec monscript powershell, j'a il'impression que mon lastinsertid n'est pas pris en compte dans mon script.
[code:1]
Import-Module \"C:\RunMySQLQuery.ps1\"

$global:«»DBMysqlHost = 'xxx'
$global:«»DBSQL = 'xxx'
$global:«»DBSQLUser = 'xxx'
$global:«»DBSQLPassword = 'xxx'
$varconMysql = \"Server=$DBMysqlHost;Uid=$DBSQLUser;Pwd=$DBSQLPassword;database=$DBSQL;\"

$NumApplis = 179,197,207

$NumApplis.Split(',')

$UserAdd=@\"
INSERT INTO users (matricule,xxx,xxx,ldap,lastname,firstname,email,job,active,new_ldap,id) VALUES ('$EmployeeIDINT','$TrigramFinal','','','$Lastname','$Firstname','','$Description',1,'',LAST_INSERT_ID());
\"@

Run-MySQLQuery -query $UserAdd -connectionString $varconMysql

ForEach ( $AppID in $NumApplis.Split(','))
{
$UserRights = @\"
INSERT INTO rights(id,type,matricule,app_id) VALUES (LAST_INSERT_ID(),'user','$EmployeeIDINT','$AppID');
\"@
Run-MySQLQuery -query $UserRights -connectionString $varconMysql
}
[/code:1]

Ce qui doit donc me faire pour la 1ere commande Run-MySQLQuery, la création du user dans la base : ok ça marche.

la seconde Run-MySQLQuery : pour chaque appid lancer la requete insert into, et là ça bloque.
j'ai toujours la meme erreur : \"Duplicate entry '7032' for key 'PRIMARY

D'apres ce que j'ai pu voir sur le net, c'est a cause de la colonne id qui ne se met pas a jour (elle est bien en autoincrement), le truc bizarre c'est qu'avec ces meme requete dans MySQL Query Browser tout marche tres bien.

Alors Probleme d'interpretation powershell ou probleme de base/table/colonne mysql ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 9 ans 6 mois #22267 par Philippe
salut roninjin

je ne suis pas un pro de MySQL mais puisque ta colonne ID est en autoincrement tu n'a pas besoin de indiqué dans ta requête normalement !

fait un essai avec cette requête :
[code:1]$UserRights = @\"
INSERT INTO rights(type,matricule,app_id) VALUES ('user','$EmployeeIDINT','
$AppID');
\"@[/code:1]

le truc bizarre c'est qu'avec ces meme requete dans MySQL Query Browser tout marche tres bien.

sur ce point je comprend pas non plus

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 9 ans 6 mois #22269 par Roninjin
Bien vu l'ami c'est ça !
Un gros merci :)

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.040 secondes
Propulsé par Kunena