Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lelebrr

Id auto increment

Recommended Posts

Bom gente ... deixa eu tentar explicar ...

tenho uma tabela de eventos ...

que seria

ID_cliente , ID_evento , nome

 

eu gostaria de fazer assim ...

que eu pegasse o ID do cliente .. que esta em outra tabela

e somasse com esse do evento ...

pode ser ID : 01_08

onde 01 = id do cliente

e 02 = id do evento

 

ahh eles tem q ser preenchidos automatico ... pois cada cliente vai ter x eventos ..

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

como é uma relação n X n ou seja podem ter n clientes para um evento e podem ter n eventos para um cliente, cria uma terceira tabela para relacionar os dois, e defina a chave primária como união dos dois id´s

 

tabela cliente

 

id

nome

...

 

tabela evento

 

id

nome

...

 

tabela cliente_evento

 

id_cliente

id_evento

chave primária(id_cliente,id_evento)

...

Compartilhar este post


Link para o post
Compartilhar em outros sites

como é uma relação n X n ou seja podem ter n clientes para um evento e podem ter n eventos para um cliente, cria uma terceira tabela para relacionar os dois, e defina a chave primária como união dos dois id´s

 

tabela cliente

 

id

nome

...

 

tabela evento

 

id

nome

...

 

tabela cliente_evento

 

id_cliente

id_evento

chave primária(id_cliente,id_evento)

...

 

 

Ola amigo .. obrigado .. eu intendi como que é ...

mas nao consegui intender como faz ... pode me ajudar??

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora cria uma terceira tabela para relacionar as duas

 

CREATE TABLE `cliente_evento` (
 `id_cliente` int(5) NOT NULL,--mesmo tipo de campo do id do cliente
 `id_evento` int(5) NOT NULL,--mesmo tipo de campo do id do evento
 PRIMARY KEY  (`id_cliente`,`id_evento`),--define a chave primária como união de duas chaves
 FOREIGN KEY (`id_cliente`) REFERENCES `cliente` (`id`),--especifica de onde é a referência do campo id_cliente
 FOREIGN KEY (`id_evento`) REFERENCES `evento` (`id`)--especifica de onde é a referência do campo id_evento
) 

 

isso é o básico

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora cria uma terceira tabela para relacionar as duas

 

CREATE TABLE `cliente_evento` (
 `id_cliente` int(5) NOT NULL,--mesmo tipo de campo do id do cliente
 `id_evento` int(5) NOT NULL,--mesmo tipo de campo do id do evento
 PRIMARY KEY  (`id_cliente`,`id_evento`),--define a chave primária como união de duas chaves
 FOREIGN KEY (`id_cliente`) REFERENCES `cliente` (`id`),--especifica de onde é a referência do campo id_cliente
 FOREIGN KEY (`id_evento`) REFERENCES `evento` (`id`)--especifica de onde é a referência do campo id_evento
) 

 

isso é o básico

 

 

perfeito amigo .. e se caso eu queira pegar o resultado da soma das 2 e somar com mais 1????

Compartilhar este post


Link para o post
Compartilhar em outros sites

só para entender, para que você quer fazer isso??

 

a soma é fácil

select (`id_cliente` + `id_evento` + 1) as soma from `cliente_evento`

mas não vejo utilidade

Compartilhar este post


Link para o post
Compartilhar em outros sites

vou tentar explicar rs...

 

eh uma pagina de cadastro .. que o cliente cadastra os seus dados ... nela é gerada um id

esses clientes que cadastraum os eventos .. por isso a juncao dos 2 ids ... exemplo ... cliente com o id 01 criou um evento com o id 04

intao gostaria que ficasse meio que 01_04

ai ... os funcionarios que querem trabalhar .. vaum c cadastrar ...

gerando o terceiro id ..

e para saber o numero final ... ID1+ID2+ID3

acha q estou complicando??? rs

teria alguma maneira mais facil?

Compartilhar este post


Link para o post
Compartilhar em outros sites

a terceira tabela utiliza como id a união do id do cliente e do id do evento

É um número único, não há a menor possibilidade de se repetir, e mesmo se você tentar não vai conseguir pois o banco não vai aceitar

e outra, elimina a possibilidade de um cliente se cadastrar no mesmo evento mais de uma vez

 

Pode ser que esteja pensando de uma maneira e você de outra

 

mas aproveite as tabelas para fazer da sua forma somente adaptando a sua necessidade

Compartilhar este post


Link para o post
Compartilhar em outros sites

a terceira tabela utiliza como id a união do id do cliente e do id do evento

É um número único, não há a menor possibilidade de se repetir, e mesmo se você tentar não vai conseguir pois o banco não vai aceitar

e outra, elimina a possibilidade de um cliente se cadastrar no mesmo evento mais de uma vez

 

Pode ser que esteja pensando de uma maneira e você de outra

 

mas aproveite as tabelas para fazer da sua forma somente adaptando a sua necessidade

 

rs .. eh amigo .. acho q você esta pensando de uma maneira e eu oura ...

vamos por partes ...

o cliente eh o dono do evento .. ele vai c cadastrar apenas uma vez ...

mas o cliente pode ter x eventos e x credenciais .. q seria a terceira id

 

e nunca vai c repetir os ids ... pq c eles c juntao e ficao em auto increment ... ou seja .. qd o clente 1 criar um evento na tabela evento fica 1_1 ... qd ele criar outro evento .. vai ficar 1_2 assim por diante ....

e qd criarem uma credencial ..

exemplo .. cliente 1 cria uma credencial no evento 2 ....

vai ficar ID: 1_2_1 .. c criar outra no mesmo evento .... 1_2_2

sera q eh possivel???

Compartilhar este post


Link para o post
Compartilhar em outros sites

não isso não é impossível, mas vai depender muito da modelagem do seu banco

pense ae,

a credencial pertence ao cliente ou ao evento

 

estude as formas normais, entidade e relacionamento.

 

isso é com você ae

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.