Booléen ???

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Booléen ???

par Invité » 05 juil. 2005, 08:57

pardonne mon ignorance, mais quel est le développé de SGBD ?
systeme de gestion de base de données

par fggdm » 29 juin 2005, 21:52

Pardonne mon incompréhension mais la question concerne qui et quoi exactement ?

Sinon pour le message sur les coched boxes tu n'as pas fais un hors-sujet, ta citation sort d'où ?

par Packman » 29 juin 2005, 20:20

pardonne mon ignorance, mais quel est le développé de SGBD ?

par fggdm » 29 juin 2005, 19:41

Si tu prends un SGBDR plus complet que MySQL comme PostgreSQL il y a une notion de typage assez forte avec même la possibilité de créer ses propres types et ce n'est pas par hasard. D'ailleurs chez MySQL, malgré leurs discours d'il y a quelques années, on prend la route d'un vrai SGBD avec les clefs étrangères, des nouveaux types, des sous-requêtes etc

Une donnée ne devrait pouvoir avoir qu'un seul type, là on est dans un cas où du côté applicatif c'est un booléen et du côté du SGBD c'est un entier ! Bonjour le mapping ! Ca veut dire qu' "en dur" - côté applicatif - ce qui vient de ce champ précis n'est pas un entier mais un booléen !

Sinon autant imaginer un SGBD avec un seul type de donnée :o

par Packman » 29 juin 2005, 19:32

Songeons que l'on peux ajouter une entrée depuis PhpMyAdmin...
Donc il serait bon de fixer le problème directement dans MySQL

par ouckileou » 29 juin 2005, 19:09

Salut,

Encore du pseudo typage. Pff !

Si on prend un tinyint(1) ça veut dire qu'on peut mettre 0, 1,... 9 et faire des bêtises. Comme dit plus haut sans véritable type boolean avec vrai ou faux et rien d'autre je préconise le type enum avec au choix 0 et 1 ou true et false comme ça il y a moins d'ambiguïté !
c'est vrai, avec ce tinyint on pourrait mettre n'importe quoi
mais il suffit de limiter les choix au niveau de l'interface (PHP a priori)
c'est pas au niveau de la base que tu valides les données

donc bon, un tinyint c'est pas si mal ;)

par Packman » 29 juin 2005, 19:00

heu, je crois qu'il y a un malentendu là...
qui à parlé de oui ou de non ?

si c'est ce que tu as compris venant de ma part, je voulais dire :
"is coched" & "is pas coched" lol
savoir si ma checkbox est cochée ou pas, et le traiter correctement

par fggdm » 29 juin 2005, 18:36

Salut,

Il faut utiliser le bouton radio pour un "oui ou non" si tu utilises des cases à cocher ça veut dire qu'on peut répondre oui ET non, imagine un peu une application pour un référendum avec des cases à cocher :lol:

par Packman » 29 juin 2005, 18:33

Autre question (j'en profite), Si j'ai dans mon code une checkbox!
Si il y a une croix, alors cela va mettre le booléen a 1 dans la base ! Si j'ai pas de croix le booléen va etre a 0 !!
Si j'ai bien compris mes cours, une checkbox ne donnera pas de variable si elle n'est pas coché, et crééra une varaible portant le nom de la checkbox et ayant pour valeur la valeur de la checkbox.

Pour utiliser une checkbox, dans mon script d'analyse, je fait un if(!isset($mavar)){$mavar=0;} et ensuite je me retrouve avec 0 ou la valeur sir la checkbox est cochée

par fggdm » 29 juin 2005, 18:24

Salut,

Encore du pseudo typage. Pff !

Si on prend un tinyint(1) ça veut dire qu'on peut mettre 0, 1,... 9 et faire des bêtises. Comme dit plus haut sans véritable type boolean avec vrai ou faux et rien d'autre je préconise le type enum avec au choix 0 et 1 ou true et false comme ça il y a moins d'ambiguïté !

par ouckileou » 29 juin 2005, 17:07

tiens un truc que je ne savais pas
il y a en fait un type Boolean depuis la version 4 mais...
BIT , BOOL , BOOLEAN

Ce sont des synonymes de TINYINT(1). Le synonyme BOOLEAN a été ajouté en version 4.1.0

Un type booléen complet, qui sera introduit pour être en accord avec la norme SQL-99.
=> http://dev.mysql.com/doc/mysql/fr/numer ... rview.html

par mere-teresa » 29 juin 2005, 17:06

Apparemment, cela existe
source : http://www.nexen.net/docs/mysql/annotee ... erview.php

BIT

BOOL

BOOLEAN
Ce sont des synonymes de TINYINT(1) . Le synonyme BOOLEAN a été ajouté en version 4.1.0

Un type booléen complet, qui sera introduit pour être en accord avec la norme SQL-99.

par psaikopat » 29 juin 2005, 16:59

[Résolu] Merci !

par ouckileou » 29 juin 2005, 16:55

il n'y a pas de booléen en MySQL (si c'est bien de ça que tu parles)

tu peux utiliser un TinyInt, que tu mettras à zéro ou 1

donc pour la deuxième question, tu mets défaut à zéro, sinon tu insère 1, et tu gères ça par ton interface

par mere-teresa » 29 juin 2005, 16:55

Utilise un ENUM