[Ajuda] Mysql!!! - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6) +--- Tópico: [Ajuda] Mysql!!! (/showthread.php?tid=3498) |
Mysql!!! - agi.exe - 03/04/2023 Código PHP: mysql_query(ConexaoSQL, "CREATE TABLE IF NOT EXISTS `Houses` (`id` int not null AUTO_INCREMENT, PRIMARY KEY(id));", false); Quando deleto uma coluna já criada da tabela Houses, e depois crio uma outra coluna o primary key(id) não pega o lugar da coluna q foi deletada! EX: Deleto a caluna com primary key(id) 1 e depois crio uma outra coluna o primary keyid) não será 1 (será pulado) enquanto que a coluna que tinha primary key (id) 1 já não existe Isso tem solução? RE: Mysql!!! - MarcosBrazz - 03/04/2023 Não tem solução, é do própio MySQL RE: Mysql!!! - João Pedro Alves - 03/04/2023 Você precisa entender o conceiito de chave primária. Uma chave primária é uma identificação UNICA e IRREPETÌVEL para um conjunto de dados. Se por algum motivo você que resse tipo de comportamento que você drescreveu então não use chave primaria nesse campo pois não faria sentido. Use outro campo como um itndeificador secundário e crie uma lógica manual para preencher o valor da maneira que você quer. Uma dica: meus anos de experiência em programação me dizem que tem uma enorme chance de você ter aquitetado seu sistema de maneira não tão legal porque esse comportamento que você precisa é muito atípico... RE: Mysql!!! - Maycon_Felipe - 03/04/2023 Bom eu utilizava dessa forma a baixo sempre quando iniciava o servidor antes de qualquer coisa, etc.. Código: mysql_query(coloca aqui seu BD, "SET @count = 0"); Mas há um problema ai.. se vc for verificar o dono da casa pelo ID dela, você vai ter conflito.. Uma forma é verificar todas as casas e setar o ID dela para o player, obviamente salvando o Nome dele na tabela da casa.. Se não for utilizar o ID para nenhuma outra coisa, acho válido utilizar, e sempre utilizar quando o servidor inicia, fora isso você continuará a ter conflitos, pois terá q carregar tudo de novo para alocar nas variáveis certas. RE: Mysql!!! - João Pedro Alves - 04/04/2023 (03/04/2023 22:28)Maycon_Felipe Escreveu: Bom eu utilizava dessa forma a baixo sempre quando iniciava o servidor antes de qualquer coisa, etc.. RE: Mysql!!! - c0mbaT_ - 06/04/2023 Bom dia, sua resposta tem uma solução sim! Você terá que criar um loop para verificar no seu banco de dados onde a próxima "Primary Key" está vazia no caso com valor "0", veja um exemplo: Código: #define MAX_HOUSES 250 A variável 'IsNull' guardará o valor de cada chave primária de acordo com o Loop feito, assim que identificar que o valor da chave primária é 0, ela entrará na condicional "IF". Quando for utilizar o mysql_format, coloque no valor da chave primeira o valor da variável do Loop "i" de acordo como está no código. Espero ter ajudado RE: Mysql!!! - Vel - 06/04/2023 Isso não é de forma alguma considerado um problema, não deveria ter solução e muito menos precisar de solução... |