Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Baia

Primary Key Mysql

Recommended Posts

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? 🤔

Share this post


Link to post
Share on other 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.

Share this post


Link to post
Share on other 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

Share this post


Link to post
Share on other 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.

Share this post


Link to post
Share on other 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?

Share this post


Link to post
Share on other 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)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.