neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 31 oct. 2007 à 22:54
Salut,
Sous MySQL, Access, Oracle, DB2, SQL Server, PostgreSQL, ou un autre SGBD ?
Avec MySQL, ce n'est pas vraiment possible.
Tout ce qui est possible, c'est d'utiliser ON DUPLICATE KEY
Seulement, cela ne fonctionne que pour les champs indexés et à condition de fournir une action UPDATE à faire en cas de doublon.
En gros, le mieux c'est encore de faire une requête SELECT avant...
Pour les autres SGBD, je ne sais pas... Il est fort probable, de toute façon, que la doc du SGBD que tu utilises te renseignera bien : n'hésite pas à la consulter, elle a été écrite par les auteurs du SGBD (qui savent donc de quoi ils parlent) et justement en vue de répondre à ce genre de question...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 1 nov. 2007 à 17:39
@neigedhiver => lol, tu fais gaffe maintenant, après mes multiples remarques quant au type de bdd utilisé suite à tes réponses ;-)
Mais ouais, t'as raison, là c'est vague.
Selon ton serveur de bdd, un trigger peut faire l'affaire. Mais ce n'est pas moins coûteux qu'un select...
Et, tu sais, un select sur une table bien indexée, c'est pas la mort...
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 1 nov. 2007 à 18:32
@malalam >
Ben... je pars vaguement du principe que quand on ne précise pas, c'est du MySQL... Question d'habitude, et puis les fai qui proposent autre chose sont rares, parfois postgreSQL, mais guère plus... Après, si c'est une configuration spécifique, en entreprise par exemple, il me semble avoir remarqué que les gens font attention à préciser ce qu'ils utilisent, quand c'est pas "la norme"...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 1 nov. 2007 à 20:34
Tu as sans doute raison :-)
Perso, depuis 3 ans, je bosse bien plus souvent sur mssql que sur mysql. Et comme il y a beaucoup de différences, j'ai appris à essayer d'écrire du sql le plus ansi possible ;-) Bref, le plus portable possible.
Mais en effet, la plupart des gens ici étant amateurs, ils ont généralement un hébergement classique offrant php + mysql.
Vous n’avez pas trouvé la réponse que vous recherchez ?