[Access] Mise à 0 d'un champs par défaut

Mise à 0 d'un champs par défaut [Access] - Programmation

Marsh Posté le 27-08-2002 à 17:43:14    

bonjour a tous,
 
je crée une requette création de table dans laquelle j'execute un calcul.
Lorsque ma table se crée, seul les champs calculé contiennent un chiffre, les champs dans lequel aucun calcul ne s'est produit sont à blanc.
 
je souhaite par défaut que le champs contienne 0
 
comment ??
 
merci
 :hello:

Reply

Marsh Posté le 27-08-2002 à 17:43:14   

Reply

Marsh Posté le 27-08-2002 à 19:44:59    

:hello:

Reply

Marsh Posté le 28-08-2002 à 00:10:32    

dans ta table met la valeur par défaut 0 à ton champs.
 
pour la déclaration SQL, c'est comme ça pour ton champ :
 
CREATE TABLE toto (ID INT PRIMARY KEY, TonNombre INT NOT NULL DEFAULT 0)


Message édité par MagicBuzz le 28-08-2002 à 00:10:52
Reply

Marsh Posté le 28-08-2002 à 00:40:07    

dans la table je peux pas mettre la valaur 0 à mon champs puisque c'est une requete création de table, a chaque fois que j'execute la requete elle ecrase l'ancienne table.
 
pour la déclaration sql comprends pas  :heink:  
je peux déclarer une primary key lors de la création de la table ?
 
merci

Reply

Marsh Posté le 28-08-2002 à 00:46:31    

Oui.
 
En fait, crée la table en utilisant l'instruction CREATE (il me semble que ça marche bien sous Access 2K)
Tu auras plus d'infos dans la doc d'access, d'autant plus que le support du SQL par Access est assez différent de ce qu'on trouve habituellement (restrictions importantes, support de trucs directement tirés du VB, etc.)
 
Et ensuite, au lieu de faire un CREATE TABLE toto AS SELECT ..., fait un INSERT INTO toto (champ1, champ2, ...) VALUES (SELECT ...)
 
Si ça marche pas, enlève "values ( )" et met directement le select à la place. Me souvient plus de l'instruction exacte.
 
Avec cette solution, tu crées la table "proprement" avec les contrôles nécessaire (NOT NULL, PK, FK, etc.) et comme ça tu n'inserre dedans que des données valides.

Reply

Marsh Posté le 28-08-2002 à 00:49:54    

c'est pas une création de table mais une requête création de table
ex script:
 
SELECT articles.article, articles.libellé, libellé.segment INTO xxx
FROM libellé INNER JOIN articles ON libellé.libellé = articles.libellé;

Reply

Marsh Posté le 28-08-2002 à 01:17:07    

C pas une création de table :sarcastic:
C'est un select tout bête ;)
 

Reply

Marsh Posté le 28-08-2002 à 01:17:45    

y'a la fonction ISNULL(nomChamp, 0) que tu peux utliser.
 
nomChamp peut être ton calcul.
 
Si la valeur est NULL, alors il remplacera par 0

Reply

Marsh Posté le 28-08-2002 à 07:58:37    

j'essai ca
merci
 
 ;)

Reply

Marsh Posté le 29-08-2002 à 09:58:08    

ca marche pas isnull  
ou alors je pige rien  :D

Reply

Marsh Posté le 29-08-2002 à 09:58:08   

Reply

Marsh Posté le 29-08-2002 à 23:30:51    

désolé, je peux pas te dire la syntaxe avec access. mais avec sql server, isnull permet de remplacer "null" par une valeur.

Reply

Marsh Posté le 30-08-2002 à 13:03:05    

en fait j'ai fait un update du champs à 0 quand celui ci est null
j'ai contourné le problème
 
merci
 :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed