Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Baia

Primary Key Mysql

Mensagens Recomendadas

Baia

É possivel no Mysql ao criar uma tabela definir o primary key auto increment  e invés dele começar a 1,  começar por exemplo a 123? ou então começar a 1 mas com 3 digitos ex:001? 🤔

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
mjamado

Sim, é possível colocar a começar no número que quiseres, basta definir o valor de AUTO_INCREMENT, tipo isto (tabela criada anteriormente):

ALTER TABLE tabela AUTO_INCREMENT = 100


"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Baia

Isso é possivel?

eu coloquei assim

CREATE TABLE exemplo (`id` int(3) NOT NULL AUTO_INCREMENT=100)

mas devolve um erro de sintaxe apartir de "=100"

ps: eu estou a falar de MySql, isso se calhar é só para SQL

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
mjamado

Tens de criar a tabela primeiro, com a coluna AUTO_INCREMENT (e não te esqueças que essa coluna tem de ser a PRIMARY KEY), e só depois mudar o número em que começa o dito cujo, com a instrução ALTER TABLE que dei atrás.


"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Baia

Eu tinha pensado que era ao criar a tabela. Agora funciona obrigado.

Mas também não dá para definir logo ao criar a tabela?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
falco

Não tens que criar a tabela antes!

Isso é disparatado!!!

O valor do auto-incremento é uma opção de tabela, tal como o engine. E basta consultar a documentação oficial para ver isso (http://dev.mysql.com/doc/refman/5.1/en/create-table.html).

De fazer notar que em MySQL só pode haver uma coluna com auto-incremento e que essa coluna tem que ser chave.

exemplo:

mysql> create table patp (qwerty int NOT NULL KEY AUTO_INCREMENT) ENGINE=MEMORY, AUTO_INCREMENT=3;
Query OK, 0 rows affected, 0 warnings (0,14 sec)

mysql> show create table patp\G
*************************** 1. row ***************************
       Table: patp
Create Table: CREATE TABLE `patp` (
  `qwerty` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`qwerty`)
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=latin1
1 row in set (0,00 sec)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.