Rechercher : dans
Par :

Requete SQL via php

Dernière réponse le 30 sep 2008 à 12:19:49 Dadou, le 29 sep 2008 à 16:07:19 
 Signaler ce message aux modérateurs

Bonjour,
voila j'ai un petit problème avec une requête sql via php :

J'ai une table avec 3 champs (ID, Name et Soft).

Je voudrais supprimer la ligne ou le champs Soft est vide. Voici ma requête :

$queryc = mysql_query("DELETE FROM test WHERE `Soft` IS NULL") or die(mysql_error());

J'ai essayé avec Soft = "" et Soft ='' avec et sans espace mais sa ne marche pas.

Quelqu'un aurait-il une idée?

Meilleures réponses pour « Requete SQL via php » dans :
SQL - éviter les doublons dans un SELECT VoirProblème Comment éviter les doublons dans les résultats d'une requête SQL ? Solution Il suffit d'utiliser la clause DISTINCT entre SELECT et les champs. Exemple : SELECT distinct id,nom,prenom FROM matable Plus d'informations ...
Exécution de requêtes avec JDBC VoirExécution d'une requête SQL Pour exécuter une requête SQL, il s'agit dans un premier temps de créer un objet Statement, pouvant être obtenu à partir de l'objet Connection. Un objet ResultSet permettra de récupérer les données en provenance de...

1

dubuducu, le 29 sep 2008 à 16:09:45

Met ceci :


$queryc = mysql_query("DELETE FROM test WHERE `Soft`= 0 ") or die(mysql_error()); 


ca fonctionne

Répondre à dubuducu

7

Rollin'babe !!, le 30 sep 2008 à 10:54:22

Bonjour,

NULL et 0 - est ce vraiment la même chooose ?

(:>).

Répondre à Rollin'babe !!

2

Dadou, le 29 sep 2008 à 16:13:56

Merci de ta réponse, mais ça ma supprimer toutes les lignes de ma table xD...

Une autre solution?

Répondre à Dadou

3

dubuducu, le 29 sep 2008 à 16:20:29

Hum .... si je peux t'aider, fais moi signe !! j'aime bien tout casser !
je suis vraiment désolé ... !! BREF je viends de tester ceci :

$queryc = mysql_query("DELETE FROM test WHERE  Soft = ' ' ") or die(mysql_error()); 

Répondre à dubuducu

8

Rollin'babe !!, le 30 sep 2008 à 10:55:54

Re,

ben faudrait savoir ... c'est ti du CHAR ou du INTEGRE/BINARY/SMALLINT ou autres ?...

(:>)

Répondre à Rollin'babe !!

4

Dadou, le 29 sep 2008 à 16:24:37

Non toujours pas. (peut être parce que le champs Soft est de type text?)

ne t'inquiète pas, comme son nom l'indique, c'est une table test.

Répondre à Dadou

5

dubuducu, le 29 sep 2008 à 16:28:05

SAns deconner ! je viens de tester ca sur phpmyadmin et ca fonctionne nikel ...

SELECT * 
FROM `membres` 
WHERE info = ' '
LIMIT 0 , 30;

il m'a select tous les membres avec info vide !
je suis désolé de ne pas pouvoir t'aider plus que ca ...
enkore une fois désolé pour ta base :p

Répondre à dubuducu

9

Rollin'babe !!, le 30 sep 2008 à 10:57:45

OK,

Donc du SPACE de dimension 1 - c'est du vide .... intéressant comme discussion philosophique.

(;>)

Répondre à Rollin'babe !!

6

Mikey_UFC, le 29 sep 2008 à 19:12:30

Cette requête est la bonne : DELETE FROM test WHERE `Soft` IS NULL

Mais es-tu sûr que tu avais bien la valeur NULL dans le champs Soft ?

Répondre à Mikey_UFC

10

 jihelge, le 30 sep 2008 à 12:19:49

Rollin'babe
bonne remarque et Mikey-UFC tu as raison. Mettez ce que vous voulez dans un BDD soyez conventionnel à mort (et ceci est valable dans toutes sortes de programmation) remplissez les champs avec quelque chose que vous connaissez ne comptez pas sur les "automatismes" souvent la valeur et le typage est indéterminé. Faites de vrais inits.

Répondre à jihelge