Postado Julho 26, 2023 1 ano Olá boa noite, Gostaria de pedir uma ajuda a vocês, estou com um script de remover guilds inativas porem ele está gerando um erro na distro Erro mysql_real_query(): SELECT COUNT(guild_id) FROM `players` WHERE `guild_id` = '48'; - MYSQL ERROR: Unknown column 'guild_id' in 'field list' (1054) Script Spoiler function onStartup() local result_guilds = db.getResult("SELECT `id`, `creationdata` FROM `guilds` ORDER by `creationdata` ASC;") local days = 30*3600*24 local nowtime = os.date('*t') if (result_guilds and result_guilds:getID() ~= -1) then while(true) do local id = result:getDataInt("id") local date = result_guilds:getDataInt("creationdata") local time= os.time(nowtime) - date local duedate = time - days if duedate >= 0 then local result_countplayersguild = db.getResult("SELECT COUNT(guild_id) FROM `players` WHERE `guild_id` = '".. id .."';") if (result_countplayersguild and result_countplayersguild:getID() ~= -1) then local manyplayers = result_countplayersguild:getDataInt("COUNT(guild_id)") if manyplayers < 10 then db.executeQuery("DELETE FROM `guild_invite` WHERE `guild_id` = '".. id .."';") db.executeQuery("DELETE FROM `guild_kills` WHERE `guild_id` = '".. id .."';") db.executeQuery("DELETE FROM `guild_ranks` WHERE `guild_id` = '".. id .."';") db.executeQuery("DELETE FROM `guild_storage` WHERE `guild_id` = '".. id .."';") db.executeQuery("DELETE FROM `guild_wars` WHERE `guild_id` = '".. id .."';") end end end if not(result_guilds:next()) then break end end end end Utilizo OTX Server 2 - 8.6 Muito obrigado desde já!
Postado Julho 27, 2023 1 ano Diretor Solução function onStartup() local result_guilds = db.getResult("SELECT `id`, `creationdata` FROM `guilds` ORDER by `creationdata` ASC;") local days = 30 * 3600 * 24 local nowtime = os.time() if (result_guilds and result_guilds:getID() ~= -1) then while (true) do local id = result_guilds:getDataInt("id") local date = result_guilds:getDataInt("creationdata") local time = nowtime - date local duedate = time - days if duedate >= 0 then local columnExists = db.isColumn("players", "guild_id") if columnExists then local result_countplayersguild = db.getResult("SELECT COUNT(*) AS player_count FROM `players` WHERE `guild_id` = " .. id .. ";") if (result_countplayersguild) then local manyplayers = result_countplayersguild:getDataInt("player_count") result_countplayersguild:free() if manyplayers < 10 then db.executeQuery("DELETE FROM `guild_invite` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_kills` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_ranks` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_storage` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_wars` WHERE `guild_id` = " .. id .. ";") end end end end if not (result_guilds:next()) then break end end result_guilds:free() end end Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código. #OpenSource #Programação #Contribuição
Postado Julho 28, 2023 1 ano Autor Desculpe reviver o post porem agora esta dando este erro [16:02:39.731] [Error - GlobalEvent Interface] [16:02:39.733] data/globalevents/scripts/init.lua:onStartup [16:02:39.733] Description: [16:02:39.734] data/globalevents/scripts/init.lua:127: attempt to call field 'isColumn' (a nil value) [16:02:39.735] stack traceback: [16:02:39.735] data/globalevents/scripts/init.lua:127: in function <data/globalevents/scripts/init.lua:35>
Postado Setembro 23, 2023 1 ano Diretor function onStartup() local result_guilds = db.getResult("SELECT `id`, `creationdata` FROM `guilds` ORDER BY `creationdata` ASC;") local days = 30 * 3600 * 24 local nowtime = os.time() if (result_guilds and result_guilds:getID() ~= -1) then while (true) do local id = result_guilds:getDataInt("id") local date = result_guilds:getDataInt("creationdata") local time = nowtime - date local duedate = time - days if duedate >= 0 then local query = db.getResult("SHOW COLUMNS FROM `players` LIKE 'guild_id';") if (query and query:getID() ~= -1) then -- A coluna 'guild_id' existe na tabela 'players' query:free() local result_countplayersguild = db.getResult("SELECT COUNT(*) AS player_count FROM `players` WHERE `guild_id` = " .. id .. ";") if (result_countplayersguild) then local manyplayers = result_countplayersguild:getDataInt("player_count") result_countplayersguild:free() if manyplayers < 10 then db.executeQuery("DELETE FROM `guild_invite` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_kills` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_ranks` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_storage` WHERE `guild_id` = " .. id .. ";") db.executeQuery("DELETE FROM `guild_wars` WHERE `guild_id` = " .. id .. ";") end end end end if not (result_guilds:next()) then break end end result_guilds:free() end end Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código. #OpenSource #Programação #Contribuição
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.