ZA

Apagar Players Inativos Da Database (Sqlite). (Rep+)

Por zani123, 30 de ago. de 2011 em Archived

otserv
tibia
script
5
2.8k
zani123Z
30 de agosto de 2011 às 22:27

Versão: 8.60

Distro: 0.4.0 (ou 0.4.1, ou tbm 0.3.6.. eu uso os 3)

Database: SQLITE

-------------------------------------------------------

 

Ae Xtibia.

 

Minha database ta pesando 200MB já..e o tempo de save no servidor ta muito demorado (não sei se a quantidade de players da database influencia nisso, mas o tempo de server save, ha 1 mes atrás, era mais rápido que agora). Então eu to procurando por algum script (mods ou creaturescripts) que apague os players que nao logam ha 30 dias no OT.. ou até alguma QUERY que eu execute na database, e apague os players que não logam ha 30 dias.

 

Ja tentei esse sistema de apagar as houses e os players que nao entram ha 30 dias: http://www.xtibia.com/forum/topic/158507-limpar-casas/

Mas quando eu abro o SQL QUERY EDITOR na database, e executo a query do tópico, aparece isso:

 

Error while executing query: no such function: UNIX_TIMESTAMP

 

O que poderia ser? Isso acontece porque eu uso sqlite, e não mysql?

VLW.

bloderB
31 de agosto de 2011 às 13:28

Tente executar este script no seu sql:

DELETE FROM `players` WHERE `level` < 50 AND `lastlogin` < UNIX_TIMESTAMP() - 30 * 24 * 60 * 60 

Ai vc configura o lvl minimo dos players inativos que ele ira deletar.

SpiderWickS
31 de agosto de 2011 às 15:39

Amigo, ele está querendo um script cujo a função seja deletar players inativos á 30 dias.

E não um script de players inativos com determinado level.

zani123Z
02 de setembro de 2011 às 13:58

Então.. não funcionou, aparece o mesmo erro que eu citei no meu post.

Erro: Error while executing query: no such function: UNIX_TIMESTAMP

 

Acho que esse 'script' que você passou é pra MYSQL, eu uso SQLITE ;X

 

Alguem pra me ajudar?

Vlw.

Editado Setembro 2 por zani123

2 meses depois...
7585947
27 de novembro de 2011 às 12:52

DELETE FROM `players` WHERE `level` < 50 AND `lastlogin` < UNIX_TIMESTAMP() - 30 * 24 * 60 * 60 /\

 

/\ script foi feito apenas para my sql tente esse amigo :

 

 

DELETE FROM players WHERE lastlogin < - 30*24*60*60;