SA-MP Forums Archive
MySQL error - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: MySQL error (/showthread.php?tid=628028)



MySQL error - skydux123 - 04.02.2017

Hello, today I've tryed to create a system for my server. Everything in script compiles ok, but in mysql log i've got:
Код HTML:
[23:30:16] [DEBUG] CResultSet::Create(connection=0x3b6ee18, query_str='SELECT * FROM `darbai` WHERE id='1'')
[23:30:16] [DEBUG] created new resultset '0x3ba7028'
[23:30:16] [DEBUG] fetched MySQL result '0x3aa4240'
[23:30:16] [DEBUG] allocated 108 bytes for PAWN result
[23:30:16] [DEBUG] CCallback::Execute(amx=0x298a670, index=1, num_params=1)
[23:30:16] [INFO] Executing callback 'DarbasLoad' with 1 parameter...
[23:30:16] [DEBUG] processing internal specifier 'c'
[23:30:16] [DEBUG] pushed value '1' onto AMX stack
[23:30:16] [DEBUG] executing AMX callback with index '1'
[23:30:16] [DEBUG] cache_get_row_count(0x03914AD8)
[23:30:16] [DEBUG] cache_get_row_count: return value: '1'
[23:30:16] [DEBUG] AMX callback executed with error '4'
[23:30:16] [INFO] Callback successfully executed.
Code:
Код HTML:
forward DarbasLoad(darboid);
public DarbasLoad(darboid){
    new rowss = cache_num_rows();
	if(rowss > 0){
	    //Get Values
		cache_get_value_name(0, "pavadinimas", dDB[darboid][pavadinimas]);
		cache_get_value_int(0, "lygis", dDB[darboid][lygis]);
		cache_get_value_int(0, "uniforma", dDB[darboid][uniforma]);
        cache_get_value_float(0, "pX", dDB[darboid][pX]);
        cache_get_value_float(0, "pY", dDB[darboid][pY]);
        cache_get_value_float(0, "pZ", dDB[darboid][pZ]);
        cache_get_value_float(0, "mX", dDB[darboid][mX]);
        cache_get_value_float(0, "mY", dDB[darboid][mY]);
        cache_get_value_float(0, "mZ", dDB[darboid][mZ]);
        cache_get_value_int(0, "supakv", dDB[darboid][supakv]);
		//Load
		dPickup[darboid] = CreatePickup(1275, 1, dDB[darboid][pX], dDB[darboid][pY], dDB[darboid][pZ]);
		mPickup[darboid] = CreatePickup(1318, 1, dDB[darboid][mX], dDB[darboid][mY], dDB[darboid][mZ]);
		new msg[100];
		format(msg,sizeof(msg), "%s\nNuo %d lygio", dDB[darboid][pavadinimas], dDB[darboid][lygis]);
		Create3DTextLabel(msg, 0x008080FF, dDB[darboid][pX], dDB[darboid][pY], dDB[darboid][pZ], 40.0, 0, 0);
		format(msg, sizeof(msg), "%s maрinos", dDB[darboid][pavadinimas]);
		Create3DTextLabel(msg, 0x008080FF, dDB[darboid][mX], dDB[darboid][mY], dDB[darboid][mZ], 40.0, 0, 0);
		printf("Uюkrautas darbas: %s", dDB[darboid][pavadinimas]);
	}else printf("Klaida! Darbo, kurio ID: %d, nлra", darboid);
}
Thanks in advice


Re: MySQL error - BrianFaria - 04.02.2017

Try this
Код:
forward DarbasLoad(darboid);
public DarbasLoad(darboid){
    new rowss = cache_num_rows();
	if(rowss > 0){
	    //Get Values
		cache_get_value_name(0, "pavadinimas", dDB[darboid][pavadinimas]);
		cache_get_value_int(0, "lygis", dDB[darboid][lygis]);
		cache_get_value_int(0, "uniforma", dDB[darboid][uniforma]);
        cache_get_value_float(0, "pX", dDB[darboid][pX]);
        cache_get_value_float(0, "pY", dDB[darboid][pY]);
        cache_get_value_float(0, "pZ", dDB[darboid][pZ]);
        cache_get_value_float(0, "mX", dDB[darboid][mX]);
        cache_get_value_float(0, "mY", dDB[darboid][mY]);
        cache_get_value_float(0, "mZ", dDB[darboid][mZ]);
        cache_get_value_int(0, "supakv", dDB[darboid][supakv]);
		//Load
		dPickup[darboid] = CreatePickup(1275, 1, dDB[darboid][pX], dDB[darboid][pY], dDB[darboid][pZ]);
		mPickup[darboid] = CreatePickup(1318, 1, dDB[darboid][mX], dDB[darboid][mY], dDB[darboid][mZ]);
		new msg[100];
		format(msg,sizeof(msg), "%s\nNuo %d lygio", dDB[darboid][pavadinimas], dDB[darboid][lygis]);
		Create3DTextLabel(msg, 0x008080FF, dDB[darboid][pX], dDB[darboid][pY], dDB[darboid][pZ], 40.0, 0, 0);
		format(msg, sizeof(msg), "%s maрinos", dDB[darboid][pavadinimas]);
		Create3DTextLabel(msg, 0x008080FF, dDB[darboid][mX], dDB[darboid][mY], dDB[darboid][mZ], 40.0, 0, 0);
		printf("Uюkrautas darbas: %s", dDB[darboid][pavadinimas]);
	}else printf("Klaida! Darbo, kurio ID: %d, nлra", darboid);
return 1;
}



Re: MySQL error - skydux123 - 05.02.2017

It didn't helped :/


Re: MySQL error - skydux123 - 05.02.2017

Now I know where my problem is. It's not MySQL... MySQL gets all info, but cant write into enum.
Code:
Код HTML:
//Defines
//Work
#define MAX_DARBAI 1
//Variables
//Work
enum ditem {
	lygis,
    uniforma,
    pavadinimas[128],
    Float:pX,
    Float:pY,
    Float:pZ,
    Float:mX,
    Float:mY,
    Float:mZ,
    supakv
}
new dDB[MAX_DARBAI][ditem];



Re: MySQL error - SyS - 05.02.2017

There is no point in creating an array with dimension size 1

Код:
//Defines
//Work
#define MAX_DARBAI 1
//Variables
//Work
enum ditem {
	lygis,
    uniforma,
    pavadinimas[128],
    Float:pX,
    Float:pY,
    Float:pZ,
    Float:mX,
    Float:mY,
    Float:mZ,
    supakv
}
new dDB[MAX_DARBAI][ditem];



Re: MySQL error - skydux123 - 05.02.2017

Fixed