Sorry for bad english, i have a problem with DataStore2 for saves table.

This is my function inside the DataStore2:

DataStore2.Combine("DATA", "Targhette")

TARGHETTE = {}
-----------------------
local HaLaTarghetta = {}

-----------------------
function PlayerData:AddTarghetta(player,targhetta)
	
	table.insert(HaLaTarghetta[player],targhetta)
	
	local TarghettaStore = DataStore2("Targhette",player)
	TarghettaStore:Set(HaLaTarghetta[player])
end 

function PlayerData:CheckTarghette(player)
	return #HaLaTarghetta[player]
end

function PlayerData:GetTarghetta(player,targhetta)
	return HaLaTarghetta[player][targhetta]
end
--------------------------

function PlayerData:SetupTables(player)
	local TarghettaStore = DataStore2("Targhette",player)
	HaLaTarghetta[player] = TarghettaStore:Get(TARGHETTE)
end

When a player enter inside the game, i setup his table:

game.Players.PlayerAdded:connect(function(player)
	PlayerData:SetupTables(player)
end)

When i try to insert a value inside the DataStore2, works correctly.

PlayerData:AddTarghetta(player,"Test")

But, if i try to see if the player have the Object, the PlayerData send to me always "nil" with result.

PlayerData:GetTarghetta(player,"Test")

result -> "nil"

BUT, if i use

PlayerData:CheckTarghette(player)

result -> 1 (Because i have "Test" inside.

How i can check if a player have the Object without "nil"?

(i have try to use

function PlayerData:GetTarghetta(player,targhetta)
	if HaLaTarghetta[player][targhetta] then
		return true
	else
		return false
	end
end

but the result is always false)

Who can help me? Thank you