Problemas com Valor Default de Campo

Firebird

28/03/2006

Olá, utilizo interbase 6 e depois de criado a tabela, resolvi colocar um campo char(1) com valor default ´S´, mas ele não aceita de jeito nenhum, ele executa o comando sem erro algum, mas qdo abro a tabela novamente o valor default não está no campo. Alguem sabe alguma Solução ?

Vlw.


Molmedo

Molmedo

Curtidas 0

Respostas

Martins

Martins

28/03/2006

Olá, utilizo interbase 6 e depois de criado a tabela, resolvi colocar um campo char(1) com valor default ´S´, mas ele não aceita de jeito nenhum, ele executa o comando sem erro algum, mas qdo abro a tabela novamente o valor default não está no campo. Alguem sabe alguma Solução ? Vlw.


Coloque aqui se código DDL por gentileza.


GOSTEI 0
Molmedo

Molmedo

28/03/2006

Martins, segue o ddl, esqueci de avisar, estou fazendo o procedimento de colocar valor padrao no campo C_ASS_CITO, com a ferramenta SQL Manager 2005.

CREATE TABLE TBEXAMES (
C_EXAME CHAR(14) CHARACTER SET NONE NOT NULL COLLATE NONE,
C_CITO INTEGER,
C_PATO INTEGER,
C_PAC INTEGER,
C_CNES VARCHAR(18) CHARACTER SET NONE NOT NULL COLLATE NONE,
C_PRON CHAR(12) CHARACTER SET NONE COLLATE NONE,
C_ANM_PREV CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_PANO CHAR(4) CHARACTER SET NONE COLLATE NONE,
C_ANM_DIU CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_GRAV CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_CONC CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_HORM CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_RADI CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_DUM DATE,
C_ANM_RSEX CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ANM_MENO CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_CLI_INSP CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_CLI_SINA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_REJ_AUS CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_REJ_DAN CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_REJ_ALH CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_REJ_AESP CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_REJ_OUT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_REJ_OESP CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_ADQ_MAT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_ACEL CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_SANG CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_PIO CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_ART CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_CONT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_INT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ADQ_OUT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_EPI_ESC CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_EPI_GLA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_EPI_MET CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_RES_NORM CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_INFL CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_META CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_REPA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_ATRO CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_RADI CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_OUT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_BEM_OUTR CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_MIC_LACT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_COCO CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_BACI CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_CHLA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_ACTI CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_CAND CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_TRIC CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_HERP CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_GARD CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_OUT CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_MIC_OUTR CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_ATI_ESC CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ATI_GLA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_ATI_IND CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_CEL_ESCA CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_GLA_ADEN CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_NEO_MALI CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_NEO_MOUT CHAR(40) CHARACTER SET NONE COLLATE NONE,
C_CEL_ENDO CHAR(1) CHARACTER SET NONE COLLATE NONE,
C_OBS_GER VARCHAR(100) CHARACTER SET NONE COLLATE NONE,
D_COL_US DATE,
D_RECEBE DATE,
D_LIBERA DATE,
C_ADQ_OUTR VARCHAR(40) CHARACTER SET NONE COLLATE NONE,
C_ASS_CITO CHAR(1) CHARACTER SET NONE NOT NULL COLLATE NONE);


ALTER TABLE TBEXAMES ADD CONSTRAINT PK_EXAME PRIMARY KEY (C_EXAME);

CREATE UNIQUE INDEX ID_EXAME1 ON TBEXAMES(C_EXAME);


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

28/03/2006

se já havia registros na tabela, o campo não será preenchido.
funcionará somente para os novos registros.

outra coisa, na sua DDL não há informação de que o campo possui um valor default:
C_ASS_CITO CHAR(1) CHARACTER SET NONE NOT NULL COLLATE NONE);
deveria ser:
C_ASS_CITO CHAR(1) CHARACTER SET NONE NOT NULL COLLATE NONE DEFAULT ´S´);


GOSTEI 0
POSTAR