[Ajuda] Sqlite salvar
#1

Galera eu fiz um sistema aqui em sqlite para aprender porйm tive um problema:

Eu consigo fazer ele carregar, criar e salvar certinho, porйm quando eu quero salvar algo individual ele cria uma nova tabela tipo assim:

PHP код:
format(var,sizeof var,"INSERT INTO `usuarios` (`opt1`,`opt2`, `opt3`,`opt4`, `opt5`) VALUES('0', '1', 1, '1', '1')"); 
Atй ai ok, porйm eu tenho mais opзхes como login senha dinheiro etc. Entгo ele cria uma nova coluna na tabela com login senha e dinheiro = null e as op1, opt2, opt3, opt4, opt5 com os valores que eu setei.

Eu preciso saber como alterar o valor de opt1 na coluna do player e nгo criar outra para a mesma.
Reply
#2

Para mudar valores em uma linha utilize UPDATE

Por exemplo, alterar 'opt1' do jogador para 500

PHP код:
"UPDATE usuarios SET opt1 = 500 WHERE player LIKE 'Jogador'" 
Sobre os valore sendo criados como NULL, й importante definir a coluna como NOT NULL.

Primeiro, onde estб NULL deixe 0 (ou qualquer outro valor)

PHP код:
"UPDATE usuarios SET dinheiro=0 WHERE dinheiro=NULL" 
E entгo altere a tabela com ALTER TABLE (cuidado ao usar ALTER TABLE sem conhecimento)

PHP код:
"ALTER TABLE usuarios ALTER COLUMN dinheiro INTEGER NOT NULL" 
Para evitar problemas, sempre faзa um backup da sua database antes de enviar consultas manualmente.
Reply
#3

Ok.. entendi um pouco

PHP код:
format(var,sizeof var,"UPDATE `usuarios` SET (`opt1`,`opt2`, `opt3`,`opt4`, `opt5`) VALUES('0', '1', 1, '1', '1')"); 
Estб certo? pois nao deu resultado..
Reply
#4

Quote:
Originally Posted by DevilAgain
Посмотреть сообщение
Ok.. entendi um pouco

PHP код:
format(var,sizeof var,"UPDATE `usuarios` SET (`opt1`,`opt2`, `opt3`,`opt4`, `opt5`) VALUES('0', '1', 1, '1', '1')"); 
Estб certo? pois nao deu resultado..
UPDATE funciona diferente de INSERT. Й importante a condiзгo na clбusula WHERE para o servidor SQL saber onde vai editar.

PHP код:
"UPDATE [tabela] SET [coluna1]=[valor1], [coluna2]=[valor2], ... WHERE [Condiзгo...]" 
PHP код:
"UPDATE usuarios SET opt1=0, opt2=1, opt3=2 WHERE jogador LIKE 'Arakuta'" 
Reply
#5

Fiz assim:

PHP код:
( ... WHERE nick  = %s), DB_Escape(Nome(playerid))); 
Nгo obtive resultado..
Reply
#6

strings devem estar dentro de aspas simples.

PHP код:
"WHERE nick LIKE '%s';" 
Reply
#7

Fiz isso e continuo sem resultado...
Reply
#8

Como estб fazendo?
Reply
#9

PHP код:
format(var,sizeof var,"UPDATE usuarios SET opt1 = %d, opt2 = %d, opt3 = %d, opt4 = %d, opt5 = %d WHERE nick LIKE '%s'"var1var2var3var4var5DB_Escape(Nome(playerid))); 
db_query(db, var); 
Assim...
Reply
#10

tenta assim , ai so colocar as outras opзхes.

pawn Код:
format(var ,sizeof(var), " UPDATE `usuarios` SET `opt1` ='%d' WHERE `jogador`='%s' ",var1, DB_Escape(NomePlayer(playerid));
  db_free_result(db_query(db,var));
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)