SQL Server Tipos de dados numéricos
TipoIntervalo de valoresEspaço de armazenamento tinyint0 a 2551 byte smallint a bytes int a bytes bigint a bytes Decimal e numeric a a 17 bytes Smallmoney ,3648 a ,36474 bytes Money ,5808 a , bytes real-3,4^38 a -1,18^38,0 e 1,18^38 a 3,4^384 bytes Float(N)-1,79^308 a -2,23^308,0 e 2,23^308 a 1,79^308 4 bytes ou 8 Precisão para os tipos de dados inteiros;
Tipos de dados decimais Precisão para os tipos de dados decimais; PrecisãoEspaço de armazenamento 1 a 95 bytes 10 a 199 bytes 20 a 2813 bytes 29 a 3817 bytes
Modificações no SisMoura Os tipos de dados no SisMoura: Todas as chaves primárias são int ou smallint. Quando a o tipo da chave é int: Quando a tabela sofre alterações de dados diariamente. Exemplo: Venda, Contas a Receber, Contas a Pagar, etc Quando a o tipo da chave é smallint: Quando a tabela define características no sistema. Exemplo: Grupo de Produto, Tipo de documento bancário, unidade do produto e outros.
Dúvidas de fóruns Dúvida: Pessoal eu estou com um pequeno problema tenho uma tabela em que um campo do tipo char (2) em que eu tenho que converter em numeric. Sendo que tenho e posso alterar a estrutura do campo, se não for possível teria como criar outro campo numeric e atribuir os valores da outra coluna. OBS: Como o próprio campo já diz é um numero tipo inteiro que vai no máximo 99. Resposta: Utilize o comando ALTER TABLE Alter table [TABELA] alter column [CAMPO] Numeric(2,0) Tome cuidado com a perda de dados. Por exemplo: CHAR convertido para NUMERIC ou SMALLINT '01' 1 NULL NULL '' 0 'x ' ESTE CASO IRÁ GERAR ERRO
Dúvidas de fóruns Para saber se existe algum campo que não será convertido devido a erros, utilize o seguinte comando: SELECT [campo] FROM [tabela] WHERE ISNUMERIC([campo])=0 Sobre o tipo não recomendo utilizar o tipo Numeric porque ele é indicado em valores com ponto flutuante(por exemplo: 10,20 ou 1,25). Ao invés de numeric utilize smallint. É importante tomar cuidado pois smallint vai de 0 até 255.