DefaultValue de uma Coluna no SQLExpress

Oi pessoal.

Tô com um problema que é imbecil, mas eu não to achando solução.

Tenho um aplicativo fechado (não posso alterar) que escreve em 4 das 6 colunas de uma tabela num banco de dados local.

As outras duas colunas são booleanas e me ajudam a marcar quais registros já foram ou não enviados a um outro banco de dados por um aplicativo em VB.Net.

É relativamente óbvio que os novos registros que esse programa crie tenham ‘false’ nas colunas de “EnviadoXX” e “EnviadoYY”.

PORÉM, eles só ‘nascem’ com NULL e eu, inacreditavelmente, não estou conseguindo achar o diabo do DefaultValue das colunas, para colocar como False.

Eu uso o Microsoft SQL Server Managment Express para ver e alterar minhas bases de dados.

Alguém sabe onde fica o Default Value???

Lembrando que não adianta muito eu usar linha de comando na hora de criar as tabelas, pq quem cria é o programa fechado no qual eu não posso alterar nada…

Você pode, depois de as tabelas terem sido criadas pelo tal programa, executar um script SQL que as altera. Simples, não?

column_definition (Transact-SQL)

Sim, eu já pensei nisso.

Porém, vai ser mais um aplicativo em VB pra ser criado e executado pelo programa.

Não existe realmente uma maneira de se definir isso?

As colunas não têm propriedade, default value?

Eu não falei em um programa VB.
Eu disse um script SQL, que pode ser executado (via copy & paste) no SQL Management Express.
Isso pode ser feito pelo cara que instala a sua aplicação.
E esse tal script SQL faz exatamente o que você sugeriu (alterar as tais colunas para que essa propriedade “default value” seja preenchida com o valor desejado (que no seu caso seria false).

Ah…

Pra mim era fazer um programa em VB que executasse uma query qualquer.

Eu vou procurar mais informação sobre isso.

Mas aqui, cá pra nós, não ter uma propriedade Default Value de fácil acesso é um pé no saco.

Realmente achei que teria.

–//–

Só um porém, isso teria que ser feito toda vez que a tabela fosse criada e possivelmente antes dela ser rpeenchida.

E se ela for criada 10x num dia?

Vai ter que ser automático, daí a idéia do VB.

De qualquer forma é mais quadrado do que deveria ser, pelo menos na minha humilde opinião :stuck_out_tongue:

–//–

Para problemas idiotas, bole soluções idiotas.

Tô até com vergonha…

Já que eu não conseguia, via VB, pegar os caras que tinham a coluna EnviadoXX NULL, eu fiquei testando umas querys de select e update até que me veio a luz dos burros.

" Porque o SQL não vê EnviadoXX !=‘True’ ???, vou tentar (EnviadoXX = ‘False’) OR (EnviadoXX IS NULL) "

E TCHARAM!

Ou seja, ao invés de perguntar se era diferente de True, eu só perguntei se é igual a todos os outros valores possíveis…

É idiota eu sei, mas pelo menos agora a coluna pode nascer NULL :stuck_out_tongue: