Jump to content

Problema com Banco de dados


Recommended Posts

Bom, estou tentando inserir alguns valores no banco de dados para um comando que cria um Ped que da acesso a uma loja, porém na hora de receber o X, Y, Z eu recebo o seguinte erro: "dbPoll failed; unrecognized token: "'1531.669921875"" <- Este número representa o meu X pos, se eu usar um "getpos" no f8 tenho este mesmo número na minha pos X. Alguém tem alguma dica pra me ajudar ?

Esta é a parte do código aonde ele envia os dados para o banco de dados, porém da erro para salvar a pos do player.
Tentei utilizar toJSON e fromJSON, mais não obtive sucesso também..

    local x, y, z = getElementPosition(localPlayer)
    local dim = getElementDimension(localPlayer)
    local int = getElementInterior(localPlayer)
	local rot = getPedRotation(localPlayer)
	local shopid = shop
	local skinid = skin
	local Query = dbQuery(connection, "INSERT INTO shops (x, y, z, dimension, interior, rotation, skin, type) VALUES ( '"..x, y, z.."', '"..dim.."','"..int.."', '"..rot.."', '"..skinid.."', '"..shopid.."')")

 

Edited by Rakashy
Link to comment
  • Other Languages Moderators

Não é assim que se atribui valores de variáveis a uma solicitação de banco de dados.

Você coloca pontos de interrogação na declaração e depois simplesmente coloca as variáveis separadas por vírgulas após a declaração.

local Query = dbQuery(connection, "INSERT INTO shops (x, y, z, dimension, interior, rotation, skin, type) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", x, y, z, dim, int, rot, skinid, shopid)

 

Link to comment
9 minutes ago, Lord Henry said:

Não é assim que se atribui valores de variáveis a uma solicitação de banco de dados.

Você coloca pontos de interrogação na declaração e depois simplesmente coloca as variáveis separadas por vírgulas após a declaração.


local Query = dbQuery(connection, "INSERT INTO shops (x, y, z, dimension, interior, rotation, skin, type) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", x, y, z, dim, int, rot, skinid, shopid)

 

Sim, eu tentei desta forma a principio e também recebo o mesmo erro ao tentar inserir o Pos do player, estranhamente o erro parece ser apenas ao tentar inserir o valor da posição do jogador como um número inteiro.. O

 modo como mandei aqui foi uma pessoa que tentou me "AJUDAR" e disse pra fazer desta forma..

 

Link to comment
4 minutes ago, Lord Henry said:

Mostre o comando do seu CREATE TABLE.

CREATE TABLE shops (
    id        INT (11) NOT NULL,
    type      INT (11) NOT NULL
                       DEFAULT '1',
    x         FLOAT    NOT NULL
                       DEFAULT '0',
    y         FLOAT    NOT NULL
                       DEFAULT '0',
    z         FLOAT    NOT NULL
                       DEFAULT '0',
    rotation  FLOAT    NOT NULL
                       DEFAULT '0',
    skin      FLOAT    NOT NULL
                       DEFAULT '0',
    interior  INT (11) NOT NULL,
    dimension INT (11) NOT NULL,
    PRIMARY KEY (
        id
    )
);

Esta é a parte que diz respeito ao banco.. Pra mim parece tudo Ok. Os valores para x,y e z estão definidos pra Float

Link to comment
1 minute ago, Lord Henry said:

Sobre a coluna Skin, ela n deveria ser INT?

Bom, estranhamente funciona assim, como eu disse, ao tentar criar qualquer loja eu recebo um erro ao tentar inserir o valor de pos X, mais os outros valores ficam inseridos no banco.. com valor "NULL" na pos, mais assim q chegar em casa irei testar desta forma q vc me disse, e se der certo eu retorno aqui, muito obrigado pela resposta simples e direta!

Link to comment

Criação das Tabelas

dbExec(connection, "CREATE TABLE IF NOT EXISTS shops (id INT, type INT, x REAL, y REAL, z REAL, rotation REAL, skin INT, interior INT, dimension INT)")

 

 

Query

local Query = dbQuery(connection, "INSERT INTO shops (x, y, z, dimension, interior, rotation, skin, type) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", x, y, z, dim, int, rot, skinid, shopid)

 

local result = dbPoll(Query, -1)
dbFree(Query)

 

 

ou

 

 

dbExec(connection, "INSERT INTO shops (x, y, z, dimension, interior, rotation, skin, type) VALUES (?, ?, ?, ?, ?, ?, ?, ?)", x, y, z, dim, int, rot, skinid, shopid)

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...