INSERT INTO line too long -
AphexCCFC - 14.09.2013
pawn Код:
format(query, sizeof(query), "INSERT INTO houses ID, Address, Owner, Owned, Price, X, Y, Z, EnterX, EnterY, EnterZ, EnterA, ExitX, ExitY, ExitZ, ExitA, Interior VALUES, \
format(query, sizeof(query), "%s(%d, '%s', '%s', %d, %d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %d), \
HouseInfo[houseid][hID], HouseInfo[houseid][hAddress], HouseInfo[houseid][hOwner], HouseInfo[houseid][hOwned], \
HouseInfo[houseid][hPrice], HouseInfo[houseid][hX], HouseInfo[houseid][hY], \
HouseInfo[houseid][hZ], HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ],\
HouseInfo[houseid][hEnterA], HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY], \
HouseInfo[houseid][hExitZ], HouseInfo[houseid][hExitA], HouseInfo[houseid][hInterior]);
mysql_query(query);
I've even used \ to cut the lines yet they're still too long..
Re: INSERT INTO line too long -
AphexCCFC - 14.09.2013
Sorry that's wrong, this is my code:
pawn Код:
format(query, sizeof(query), "INSERT INTO houses ID, Address, Owner, Owned, Price, X, Y, Z, EnterX, EnterY, EnterZ, EnterA, ExitX, ExitY, ExitZ, ExitA, Interior, \
VALUES %s(%d, '%s', '%s', %d, %d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %d)", \
HouseInfo[houseid][hID], HouseInfo[houseid][hAddress], HouseInfo[houseid][hOwner], HouseInfo[houseid][hOwned], \
HouseInfo[houseid][hPrice], HouseInfo[houseid][hX], HouseInfo[houseid][hY], \
HouseInfo[houseid][hZ], HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ],\
HouseInfo[houseid][hEnterA], HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY], \
HouseInfo[houseid][hExitZ], HouseInfo[houseid][hExitA], HouseInfo[houseid][hInterior]);
mysql_query(query);
Please help. I'll +rep.
Re: INSERT INTO line too long -
Pottus - 14.09.2013
You'll need to use strcat(); and format your query in chunks
Re: INSERT INTO line too long -
AphexCCFC - 14.09.2013
How is it possible to strcat a variable?
pawn Код:
strcat(HouseInfo[houseid][hExitZ]);
Like this?
Re: INSERT INTO line too long -
Pottus - 14.09.2013
This is just for starters, you may need multiple strcat()'s
pawn Код:
new tmpquery[512];
format(query, sizeof(query), "INSERT INTO houses ID, Address, Owner, Owned, Price, X, Y, Z, EnterX, EnterY, EnterZ, EnterA, ExitX, ExitY, ExitZ, ExitA, Interior ");
format(tmpquery, sizeof(tmpquery), "VALUES %s(%d, '%s', '%s', %d, %d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %d)",
HouseInfo[houseid][hID], HouseInfo[houseid][hAddress], HouseInfo[houseid][hOwner], HouseInfo[houseid][hOwned],
HouseInfo[houseid][hPrice], HouseInfo[houseid][hX], HouseInfo[houseid][hY],
HouseInfo[houseid][hZ], HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY], HouseInfo[houseid][hEnterZ],
HouseInfo[houseid][hEnterA], HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY], \
HouseInfo[houseid][hExitZ], HouseInfo[houseid][hExitA], HouseInfo[houseid][hInterior]);
mysql_query(query);
// Make sure you set the size of query here!
strcat(query, tmpquery, 1024);
Re: INSERT INTO line too long -
AphexCCFC - 14.09.2013
I've managed to get this to compile:
pawn Код:
strcat(query, "INSERT INTO houses ID, Address, Owner, Owned, Price, X, Y, Z, EnterX, EnterY, EnterZ, EnterA, ExitX, ExitY, ExitZ, ExitA, Interior, ");
strcat(query, "VALUES %s(%d, '%s', '%s', %d, %d, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %d)");
format(query, sizeof(query), query, HouseInfo[houseid][hID], HouseInfo[houseid][hAddress], HouseInfo[houseid][hOwner], HouseInfo[houseid][hOwned],
HouseInfo[houseid][hPrice], HouseInfo[houseid][hX], HouseInfo[houseid][hY], HouseInfo[houseid][hZ], HouseInfo[houseid][hEnterX], HouseInfo[houseid][hEnterY],
HouseInfo[houseid][hEnterZ], HouseInfo[houseid][hEnterA], HouseInfo[houseid][hExitX], HouseInfo[houseid][hExitY],
HouseInfo[houseid][hExitZ], HouseInfo[houseid][hExitA], HouseInfo[houseid][hInterior]);
mysql_query(query);
But it doesn't add it into the database and everything there is correct.
Re: INSERT INTO line too long -
AphexCCFC - 14.09.2013
Here is my houses create table:
pawn Код:
mysql_query("CREATE TABLE IF NOT EXISTS houses(ID INT(10), Address VARCHAR(24), Owner VARCHAR(24), Owned INT(10), Price INT(10), X FLOAT(20), Y FLOAT(20), Z FLOAT(20), EnterX FLOAT(20), EnterY FLOAT(20), EnterZ FLOAT(20), EnterA FLOAT(20), ExitX FLOAT(20), ExitY FLOAT(20), ExitZ FLOAT(20), ExitA FLOAT(20), Interior INT(20) )");
Re: INSERT INTO line too long -
AphexCCFC - 14.09.2013
Help Please? I'll +rep.