Para que serve UNSIGNED no Mysql?

by - 15:37


UNSIGNED - Todos os tipos inteiros no MySQL podem ter o atributo opcional UNSIGNED. Quando queremos bloquear inserção de valores negativos em uma coluna utilizamos o parâmetro UNSIGNED. Ou seja, só serão aceitos no referido campo valores maiores ou iguais a zero. Por exemplo, uma coluna do tipo 

INT:
Faixa: de -2147483648 a 2147483647
Faixa UNSIGNED: de 0 a 4294967295
Outro exemplo, uma coluna do tipo TINYINT:
Faixa: de -128 até 127
Faixa UNSIGNED: 0 a 255

ZEROFILL - O atributo opcional ZEROFILL, preenche espaços em uma coluna, substituindo por zeros. Por exemplo, uma coluna declarada como INT(4) ZEROFILL, o valor 5 é recuperado como 0005.
Se você especificar para uma coluna numérica ZEROFILL, automaticamente o MySQL adiciona o atributo UNSIGNED a coluna.

No caso eu costumo usar nas chaves pois elas não podem ter valores negativos.
Mais um exemplo com UNSIGNED abaixo:
CREATE TABLE Clientes (idClient int(10)  UNSIGNED auto_increment NOT NULL, nome VARCHAR(100)  NOT NULL,  endereco VARCHAR(200) NOT NULL, bairro VARCHAR(50) NOT NULL, compl VARCHAR(30) NULL,  cep VARCHAR(10) NULL, cidade VARCHAR(80) NOT NULL, uf VARCHAR(2) NOT NULL, tel VARCHAR(13) NOT NULL, tel1 VARCHAR(13) NULL, cel VARCHAR(13) NULL, cel1 VARCHAR(13) NULL, email VARCHAR(350) NULL,
cpf VARCHAR(14) NULL, rg VARCHAR(10) NULL, cnpj VARCHAR(20) NULL, tipoPessoa BIT NULL,
datNasc DATE NULL, datCad DATE NOT NULL auto_increment,
PRIMARY KEY(idClient));
Estou utilizando o UNSIGNED e também um auto incremento, porque eu quero que cria automático para mim as id de cada cliente.

You May Also Like

0 comentários