SQLite Help
#1

Hey Guys,

Im in need of some help here i have a problem that my server isnt saving the player purchased vehicles
may someone can figure it out if theres something wrong with the update string's

Code:
					SQL_UpdateString(index, "PlayerVehicleModel1",PlayerInfo[playerid][PlayerVehicleModel1]);
					SQL_UpdateFloat(index, "PlayerVehicleFacing1",PlayerInfo[playerid][PlayerVehicleFacing1]);
					SQL_UpdateInt(index, "PlayerVehicle1Color",PlayerInfo[playerid][pPlayerVehicle1Color]);
					SQL_UpdateInt(index, "PlayerVehicle1Color2",PlayerInfo[playerid][pPlayerVehicle1Color2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosX1",PlayerInfo[playerid][PlayerVehiclePosX1]);
					SQL_UpdateFloat(index, "PlayerVehiclePosY1",PlayerInfo[playerid][PlayerVehiclePosY1]);
					SQL_UpdateFloat(index, "PlayerVehiclePosZ1",PlayerInfo[playerid][PlayerVehiclePosZ1]);
					SQL_UpdateInt(index, "PlayerVehicle1PaintJob",PlayerInfo[playerid][PlayerVehicle1PaintJob]);
					SQL_UpdateInt(index, "PlayerVehicle1Nos",PlayerInfo[playerid][PlayerVehicle1Nos]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot0",PlayerInfo[playerid][PlayerVehicle1ModSlot0]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot1",PlayerInfo[playerid][PlayerVehicle1ModSlot1]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot2",PlayerInfo[playerid][PlayerVehicle1ModSlot2]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot3",PlayerInfo[playerid][PlayerVehicle1ModSlot3]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot4",PlayerInfo[playerid][PlayerVehicle1ModSlot4]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot5",PlayerInfo[playerid][PlayerVehicle1ModSlot5]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot6",PlayerInfo[playerid][PlayerVehicle1ModSlot6]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot7",PlayerInfo[playerid][PlayerVehicle1ModSlot7]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot8",PlayerInfo[playerid][PlayerVehicle1ModSlot8]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot9",PlayerInfo[playerid][PlayerVehicle1ModSlot9]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot10",PlayerInfo[playerid][PlayerVehicle1ModSlot10]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot11",PlayerInfo[playerid][PlayerVehicle1ModSlot11]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot12",PlayerInfo[playerid][PlayerVehicle1ModSlot12]);
					SQL_UpdateInt(index, "PlayerVehicle1ModSlot13",PlayerInfo[playerid][PlayerVehicle1ModSlot13]);
					SQL_UpdateInt(index, "VehLock1",PlayerInfo[playerid][pVehLock1]);
					SQL_UpdateInt(index, "VehLocked1",PlayerInfo[playerid][pVehLocked1]);
					SQL_UpdateInt(index, "PlayerVehicle1Interior",PlayerInfo[playerid][PlayerVehicle1Interior]);
	                                SQL_UpdateInt(index, "PlayerVehicle1VirWorld",PlayerInfo[playerid][PlayerVehicle1VirWorld]);
					SQL_UpdateInt(index, "PlayerVehicleModel2",PlayerInfo[playerid][PlayerVehicleModel2]);
					SQL_UpdateFloat(index, "PlayerVehicleFacing2",PlayerInfo[playerid][PlayerVehicleFacing2]);
					SQL_UpdateInt(index, "PlayerVehicle2Color",PlayerInfo[playerid][pPlayerVehicle2Color]);
					SQL_UpdateInt(index, "PlayerVehicle2Color2",PlayerInfo[playerid][pPlayerVehicle2Color2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosX2",PlayerInfo[playerid][PlayerVehiclePosX2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosY2",PlayerInfo[playerid][PlayerVehiclePosY2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosZ2",PlayerInfo[playerid][PlayerVehiclePosZ2]);
					SQL_UpdateInt(index, "PlayerVehicle2PaintJob",PlayerInfo[playerid][PlayerVehicle2PaintJob]);
					SQL_UpdateInt(index, "PlayerVehicle2Nos",PlayerInfo[playerid][PlayerVehicle2Nos]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot0",PlayerInfo[playerid][PlayerVehicle2ModSlot0]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot1",PlayerInfo[playerid][PlayerVehicle2ModSlot1]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot2",PlayerInfo[playerid][PlayerVehicle2ModSlot2]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot3",PlayerInfo[playerid][PlayerVehicle2ModSlot3]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot4",PlayerInfo[playerid][PlayerVehicle2ModSlot4]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot5",PlayerInfo[playerid][PlayerVehicle2ModSlot5]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot6",PlayerInfo[playerid][PlayerVehicle2ModSlot6]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot7",PlayerInfo[playerid][PlayerVehicle2ModSlot7]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot8",PlayerInfo[playerid][PlayerVehicle2ModSlot8]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot9",PlayerInfo[playerid][PlayerVehicle2ModSlot9]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot10",PlayerInfo[playerid][PlayerVehicle2ModSlot10]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot11",PlayerInfo[playerid][PlayerVehicle2ModSlot11]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot12",PlayerInfo[playerid][PlayerVehicle2ModSlot12]);
					SQL_UpdateInt(index, "PlayerVehicle2ModSlot13",PlayerInfo[playerid][PlayerVehicle2ModSlot13]);
					SQL_UpdateInt(index, "VehLock2",PlayerInfo[playerid][pVehLock2]);
					SQL_UpdateInt(index, "VehLocked2",PlayerInfo[playerid][pVehLocked2]);
					SQL_UpdateInt(index, "PlayerVehicle2Interior",PlayerInfo[playerid][PlayerVehicle2Interior]);
	                                SQL_UpdateInt(index, "PlayerVehicle2VirWorld",PlayerInfo[playerid][PlayerVehicle2VirWorld]);
					SQL_UpdateInt(index, "PlayerVehicleModel3",PlayerInfo[playerid][PlayerVehicleModel3]);
					SQL_UpdateFloat(index, "PlayerVehicleFacing3",PlayerInfo[playerid][PlayerVehicleFacing3]);
					SQL_UpdateInt(index, "PlayerVehicle3Color",PlayerInfo[playerid][pPlayerVehicle3Color]);
					SQL_UpdateInt(index, "PlayerVehicle3Color2",PlayerInfo[playerid][pPlayerVehicle3Color2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosX3",PlayerInfo[playerid][PlayerVehiclePosX3]);
					SQL_UpdateFloat(index, "PlayerVehiclePosY3",PlayerInfo[playerid][PlayerVehiclePosY3]);
					SQL_UpdateFloat(index, "PlayerVehiclePosZ3",PlayerInfo[playerid][PlayerVehiclePosZ3]);
					SQL_UpdateInt(index, "PlayerVehicle3PaintJob",PlayerInfo[playerid][PlayerVehicle3PaintJob]);
					SQL_UpdateInt(index, "PlayerVehicle3Nos",PlayerInfo[playerid][PlayerVehicle3Nos]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot0",PlayerInfo[playerid][PlayerVehicle3ModSlot0]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot1",PlayerInfo[playerid][PlayerVehicle3ModSlot1]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot2",PlayerInfo[playerid][PlayerVehicle3ModSlot2]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot3",PlayerInfo[playerid][PlayerVehicle3ModSlot3]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot4",PlayerInfo[playerid][PlayerVehicle3ModSlot4]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot5",PlayerInfo[playerid][PlayerVehicle3ModSlot5]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot6",PlayerInfo[playerid][PlayerVehicle3ModSlot6]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot7",PlayerInfo[playerid][PlayerVehicle3ModSlot7]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot8",PlayerInfo[playerid][PlayerVehicle3ModSlot8]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot9",PlayerInfo[playerid][PlayerVehicle3ModSlot9]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot10",PlayerInfo[playerid][PlayerVehicle3ModSlot10]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot11",PlayerInfo[playerid][PlayerVehicle3ModSlot11]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot12",PlayerInfo[playerid][PlayerVehicle3ModSlot12]);
					SQL_UpdateInt(index, "PlayerVehicle3ModSlot13",PlayerInfo[playerid][PlayerVehicle3ModSlot13]);
					SQL_UpdateInt(index, "VehLock3",PlayerInfo[playerid][pVehLock3]);
					SQL_UpdateInt(index, "VehLocked3",PlayerInfo[playerid][pVehLocked3]);
					SQL_UpdateInt(index, "PlayerVehicle3Interior",PlayerInfo[playerid][PlayerVehicle3Interior]);
	                                SQL_UpdateInt(index, "PlayerVehicle3VirWorld",PlayerInfo[playerid][PlayerVehicle3VirWorld]);
					SQL_UpdateInt(index, "PlayerVehicleModel4",PlayerInfo[playerid][PlayerVehicleModel4]);
					SQL_UpdateFloat(index, "PlayerVehicleFacing4",PlayerInfo[playerid][PlayerVehicleFacing4]);
					SQL_UpdateInt(index, "PlayerVehicle4Color",PlayerInfo[playerid][pPlayerVehicle4Color]);
					SQL_UpdateInt(index, "PlayerVehicle4Color2",PlayerInfo[playerid][pPlayerVehicle4Color2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosX4",PlayerInfo[playerid][PlayerVehiclePosX4]);
					SQL_UpdateFloat(index, "PlayerVehiclePosY4",PlayerInfo[playerid][PlayerVehiclePosY4]);
					SQL_UpdateFloat(index, "PlayerVehiclePosZ4",PlayerInfo[playerid][PlayerVehiclePosZ4]);
					SQL_UpdateInt(index, "PlayerVehicle4PaintJob",PlayerInfo[playerid][PlayerVehicle4PaintJob]);
					SQL_UpdateInt(index, "PlayerVehicle4Nos",PlayerInfo[playerid][PlayerVehicle4Nos]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot0",PlayerInfo[playerid][PlayerVehicle4ModSlot0]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot1",PlayerInfo[playerid][PlayerVehicle4ModSlot1]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot2",PlayerInfo[playerid][PlayerVehicle4ModSlot2]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot3",PlayerInfo[playerid][PlayerVehicle4ModSlot3]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot4",PlayerInfo[playerid][PlayerVehicle4ModSlot4]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot5",PlayerInfo[playerid][PlayerVehicle4ModSlot5]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot6",PlayerInfo[playerid][PlayerVehicle4ModSlot6]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot7",PlayerInfo[playerid][PlayerVehicle4ModSlot7]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot8",PlayerInfo[playerid][PlayerVehicle4ModSlot8]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot9",PlayerInfo[playerid][PlayerVehicle4ModSlot9]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot10",PlayerInfo[playerid][PlayerVehicle4ModSlot10]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot11",PlayerInfo[playerid][PlayerVehicle4ModSlot11]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot12",PlayerInfo[playerid][PlayerVehicle4ModSlot12]);
					SQL_UpdateInt(index, "PlayerVehicle4ModSlot13",PlayerInfo[playerid][PlayerVehicle4ModSlot13]);
					SQL_UpdateInt(index, "VehLock4",PlayerInfo[playerid][pVehLock4]);
					SQL_UpdateInt(index, "VehLocked4",PlayerInfo[playerid][pVehLocked4]);
					SQL_UpdateInt(index, "PlayerVehicle4Interior",PlayerInfo[playerid][PlayerVehicle4Interior]);
	                                SQL_UpdateInt(index, "PlayerVehicle4VirWorld",PlayerInfo[playerid][PlayerVehicle4VirWorld]);
					SQL_UpdateInt(index, "PlayerVehicleModel5",PlayerInfo[playerid][PlayerVehicleModel5]);
					SQL_UpdateFloat(index, "PlayerVehicleFacing5",PlayerInfo[playerid][PlayerVehicleFacing5]);
					SQL_UpdateInt(index, "PlayerVehicle5Color",PlayerInfo[playerid][pPlayerVehicle5Color]);
					SQL_UpdateInt(index, "PlayerVehicle5Color2",PlayerInfo[playerid][pPlayerVehicle5Color2]);
					SQL_UpdateFloat(index, "PlayerVehiclePosX5",PlayerInfo[playerid][PlayerVehiclePosX5]);
					SQL_UpdateFloat(index, "PlayerVehiclePosY5",PlayerInfo[playerid][PlayerVehiclePosY5]);
					SQL_UpdateFloat(index, "PlayerVehiclePosZ5",PlayerInfo[playerid][PlayerVehiclePosZ5]);
					SQL_UpdateInt(index, "PlayerVehicle5PaintJob",PlayerInfo[playerid][PlayerVehicle5PaintJob]);
					SQL_UpdateInt(index, "PlayerVehicle5Nos",PlayerInfo[playerid][PlayerVehicle5Nos]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot0",PlayerInfo[playerid][PlayerVehicle5ModSlot0]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot1",PlayerInfo[playerid][PlayerVehicle5ModSlot1]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot2",PlayerInfo[playerid][PlayerVehicle5ModSlot2]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot3",PlayerInfo[playerid][PlayerVehicle5ModSlot3]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot4",PlayerInfo[playerid][PlayerVehicle5ModSlot4]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot5",PlayerInfo[playerid][PlayerVehicle5ModSlot5]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot6",PlayerInfo[playerid][PlayerVehicle5ModSlot6]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot7",PlayerInfo[playerid][PlayerVehicle5ModSlot7]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot8",PlayerInfo[playerid][PlayerVehicle5ModSlot8]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot9",PlayerInfo[playerid][PlayerVehicle5ModSlot9]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot10",PlayerInfo[playerid][PlayerVehicle5ModSlot10]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot11",PlayerInfo[playerid][PlayerVehicle5ModSlot11]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot12",PlayerInfo[playerid][PlayerVehicle5ModSlot12]);
					SQL_UpdateInt(index, "PlayerVehicle5ModSlot13",PlayerInfo[playerid][PlayerVehicle5ModSlot13]);
Here are the Update Formats.

Code:
stock SQL_PrepareUpdate(name[])
{
	new index = -1;
	for (new i = 0; i < MAX_UPDATED_QUERIES; i ++)
	{
		if (!E_QUERY_EXISTS[i])
		{
		    index = i;
		    break;
	    }
	}
	if (index != -1)
	{
		format(E_QUERY_DATA[index], 2048, "UPDATE `Accounts` SET ");
		E_QUERY_POSITION[index] = strlen(E_QUERY_DATA[index]);
		E_QUERY_EXISTS[index] = true;
		strpack(E_QUERY_NAME[index], name);
	}
	return index;
}

stock SQL_UpdateInt(index, field[], value)
{
	if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index])
	{
		new string[24];
		format(string, sizeof(string), "%d", value);
		return SQL_UpdateString(index, field, string);
	}
	return 0;
}

stock SQL_UpdateFloat(index, field[], Float:value)
{
	if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index])
	{
		new string[24];
		format(string, sizeof(string), "%.4f", value);
		return SQL_UpdateString(index, field, string);
	}
	return 0;
}

stock SQL_UpdateString(index, field[], value[])
{
	if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index])
	{
		new string[128], File:file;
		format(string, sizeof(string), "`%s` = '%s', ", field, DB_Escape(value));
		if ((strlen(E_QUERY_DATA[index]) + strlen(string)) >= sizeof(E_QUERY_DATA[]))
		{
		    new name[24];
		    strunpack(name, E_QUERY_NAME[index]);
 			printf("Warning: Update data buffer trying to exceed %d/%d characters (name: %s, field: %s)", strlen(E_QUERY_DATA[index]), sizeof(E_QUERY_DATA[]), name);
			return 0;
		}
		strins(E_QUERY_DATA[index], string, E_QUERY_POSITION[index]);
		file = fopen("fields.ini", io_readwrite);
		if (file || !fexist("fields.ini"))
		{
		    new bool:found;
		    if (!fexist("fields.ini"))
		    {
		        found = false;
		        file = fopen("fields.ini", io_append);
			}
		    else
		    {
		    	while (fread(file, string, sizeof(string)))
		    	{
		        	if (strcmp(string, field, false, strlen(field)) == 0)
		        	{
						found = true;
						break;
					}
				}
			}
			if (!found)
			{
			    format(string, sizeof(string), "ALTER TABLE `Accounts` ADD COLUMN `%s` DEFAULT 0", field);
				db_query(AccountDB, string);
				fwrite(file, field);
				fwrite(file, "\r\n");
			}
			fclose(file);
		}
		return 1;
	}
	return 0;

stock SQL_Update(index)
{
    if ((index >= 0 && index < MAX_UPDATED_QUERIES) && E_QUERY_EXISTS[index])
	{
	    new name[24], length = strlen(E_QUERY_DATA[index]);
		strunpack(name, E_QUERY_NAME[index]);
		strdel(E_QUERY_DATA[index], length - 2, length);
		format(E_QUERY_DATA[index], sizeof(E_QUERY_DATA[]), "%s WHERE `Username` = '%s'", E_QUERY_DATA[index], name);
		db_query(AccountDB, E_QUERY_DATA[index]);

		strdel(E_QUERY_DATA[index], 0, strlen(E_QUERY_DATA[index]));
		E_QUERY_EXISTS[index] = false;
		E_QUERY_POSITION[index] = 0;
		strdel(E_QUERY_NAME[index], 0, 6);
		return 1;
	}
	return 0;
}
}
Reply
#2

Would you mind to show us: SQL_UpdateString, SQL_UpdateInt and SQL_UpdateFloat?
Reply
#3

Updated.
Reply
#4

^

Also inserted the update formats that have been used in parts of the scripts to let it save to the DB
Reply
#5

I read your functions and I can't seem to find the problem. I'm sorry, but if it was with the normal way most people use SQLite I'd be happy to help you.
Reply
#6

i am having this same problem and cant understand either.
Reply
#7

same problem here too !! can some one help us ?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)