Added missing mysql keys

This commit is contained in:
ElPumpo
2019-06-01 14:07:08 +02:00
parent e06aa05b0e
commit 58a5e8f046
4 changed files with 17 additions and 29 deletions
+1 -1
View File
@@ -55,7 +55,7 @@ end)
### License
esx_datastore - datastore inventory for ESX
Copyright (C) 2015-2018 Jérémie N'gadi
Copyright (C) 2015-2019 Jérémie N'gadi
This program Is free software: you can redistribute it And/Or modify it under the terms Of the GNU General Public License As published by the Free Software Foundation, either version 3 Of the License, Or (at your option) any later version.
+10 -11
View File
@@ -1,21 +1,20 @@
USE `essentialmode`;
CREATE TABLE `datastore` (
`name` varchar(60) NOT NULL,
`label` varchar(255) NOT NULL,
`shared` int(11) NOT NULL,
`name` VARCHAR(60) NOT NULL,
`label` VARCHAR(100) NOT NULL,
`shared` INT(11) NOT NULL,
PRIMARY KEY (`name`)
);
CREATE TABLE `datastore_data` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(60) NOT NULL,
`owner` varchar(60),
`data` longtext,
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(60) NOT NULL,
`owner` VARCHAR(60),
`data` LONGTEXT,
INDEX index_datastore_name (`name`),
CONSTRAINT unique_datastore_owner_name UNIQUE (`owner`, `name`),
PRIMARY KEY (`id`)
PRIMARY KEY (`id`),
UNIQUE INDEX `index_datastore_data_name_owner` (`name`, `owner`),
INDEX `index_datastore_data_name` (`name`)
);
+2 -4
View File
@@ -68,14 +68,12 @@ function CreateDataStore(name, owner, data)
local timeoutCallback = ESX.SetTimeout(10000, function()
if self.owner == nil then
MySQL.Async.execute('UPDATE datastore_data SET data = @data WHERE name = @name',
{
MySQL.Async.execute('UPDATE datastore_data SET data = @data WHERE name = @name', {
['@data'] = json.encode(self.data),
['@name'] = self.name,
})
else
MySQL.Async.execute('UPDATE datastore_data SET data = @data WHERE name = @name and owner = @owner',
{
MySQL.Async.execute('UPDATE datastore_data SET data = @data WHERE name = @name and owner = @owner', {
['@data'] = json.encode(self.data),
['@name'] = self.name,
['@owner'] = self.owner,
+4 -13
View File
@@ -1,7 +1,5 @@
ESX = nil
local DataStoresIndex = {}
local DataStores = {}
local SharedDataStores = {}
local DataStores, DataStoresIndex, SharedDataStores = {}, {}, {}
ESX = nil
TriggerEvent('esx:getSharedObject', function(obj) ESX = obj end)
@@ -18,7 +16,6 @@ MySQL.ready(function()
})
if shared == 0 then
table.insert(DataStoresIndex, name)
DataStores[name] = {}
@@ -30,9 +27,7 @@ MySQL.ready(function()
table.insert(DataStores[name], dataStore)
end
else
local data = nil
if #result2 == 0 then
@@ -47,7 +42,6 @@ MySQL.ready(function()
local dataStore = CreateDataStore(name, nil, data)
SharedDataStores[name] = dataStore
end
end
end)
@@ -86,9 +80,7 @@ AddEventHandler('esx_datastore:getSharedDataStore', function(name, cb)
cb(GetSharedDataStore(name))
end)
AddEventHandler('esx:playerLoaded', function(source)
local _source = source
local xPlayer = ESX.GetPlayerFromId(_source)
AddEventHandler('esx:playerLoaded', function(playerId, xPlayer)
local dataStores = {}
for i=1, #DataStoresIndex, 1 do
@@ -96,8 +88,7 @@ AddEventHandler('esx:playerLoaded', function(source)
local dataStore = GetDataStore(name, xPlayer.identifier)
if dataStore == nil then
MySQL.Async.execute('INSERT INTO datastore_data (name, owner, data) VALUES (@name, @owner, @data)',
{
MySQL.Async.execute('INSERT INTO datastore_data (name, owner, data) VALUES (@name, @owner, @data)', {
['@name'] = name,
['@owner'] = xPlayer.identifier,
['@data'] = '{}'