View Single Post
JLmelenchon
Senior Member
Join Date: Mar 2019
Old 11-15-2022 , 05:35   Re: SQL duplicate entry
Reply With Quote #14

So i did not touch anything and it suddenly broke, not sure why.

L 11/14/2022 - 19:50:16: [reputation.smx] SQL Error: Incorrect integer value: 'NULL' for column 'Id' at row 1


Code:
public void SQL_CreateTables()
{
	int len = 0;
	char query[1256];
	len += Format(query[len], sizeof(query)-len, "CREATE TABLE IF NOT EXISTS `score` (");
	len += Format(query[len], sizeof(query)-len, " `Id` INT(11) NOT NULL AUTO_INCREMENT ,");
	len += Format(query[len], sizeof(query)-len, " `timestamp` INT(11) NOT NULL DEFAULT '0' ,");
	len += Format(query[len], sizeof(query)-len, " `giver_steamid` VARCHAR(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,");
	len += Format(query[len], sizeof(query)-len, " `recipient_steamid` VARCHAR(22) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,");
	len += Format(query[len], sizeof(query)-len, " `amount` INT(12) NOT NULL DEFAULT '100' ,");
	len += Format(query[len], sizeof(query)-len, " `reason` VARCHAR(120) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, ");
	len += Format(query[len], sizeof(query)-len, " PRIMARY KEY (`Id`) ) ENGINE = MyISAM;");

	for (int i; i < MaxClients; i++)
	{
		if (!IsValidClient(i))
			continue;
			
		OnClientPostAdminCheck(i);
	}

	SQL_TQuery(db, SQL_ErrorCheckCallback, query);
}
Code:
Format(sQuery, sizeof(sQuery), "INSERT INTO `score` (`Id`, `timestamp`, `giver_steamid`, `recipient_steamid`, `amount`, `reason`) VALUES ('NULL', '%i', '%s', '%s', '%i', '%s')", GetTime(), steamid, steamid, amount, sReason);
Should i replace "null" by "not null" in the single line of code? VALUES ('NULL'

Last edited by JLmelenchon; 11-15-2022 at 05:39.
JLmelenchon is offline