Hey Ich Bin im Thema MySQL noch recht neu und hab da ma paar Fragen:
1. Ich habe ca 140 PlayerVariablen (Poition,Scheine, etc.) und da der compiler nach einer bestimmten länge ja mäckert hatte ich es anders Versucht:
new query1[32], query2[32], query3[32],...........
format(query1, sizeof(query1), "UPDATE nsar_main SET Alter=%d WHERE Name='%s'", PlayerInfo[playerid][pAlter],pname);
mysql_query(query1);
format(query2, sizeof(query2), "UPDATE nsar_main SET Geschlecht=%d WHERE Name='%s'", PlayerInfo[playerid][pGeschlecht],pname);
mysql_query(query2);
format(query3, sizeof(query3), "UPDATE nsar_main SET Skin=%d WHERE Name='%s'", PlayerInfo[playerid][pSkin],pname);
mysql_query(query3);
format(query4, sizeof(query4), "UPDATE nsar_main SET Level=%d WHERE Name='%s'", PlayerInfo[playerid][pLevel],pname);
mysql_query(query4);
Das ist nu nur ein kleiner Ausschnitt
Jedoch weiß ich nicht ganz wie die bessere Lösung ist Vernünftig die Sachen zu Speichern.
Falls jemand da was einfacheres weiß kann er mir gerne bescheid geben
Jedoch bitte nicht einfach nur alter=%d, Geschlecht=%d
Weil ich ja wie gesagt sehr viele Varbiablen habe...
Es sei denn derjenige kann mir ordentlich sagen wie ich einen einfachen Zeilenumbruch dort einbaue.
2. die gleiche Geschichte muss ja auch Ausgelesen werden...
new query[300], pname[24], savingstring[20];
GetPlayerName(playerid, pname, 24);
format(query, sizeof(query), "SELECT scoretedtimes, jailedtimes, frozentimes, banned, bannedby, logins, posx, posy, posz, posa FROM playerdata WHERE user = '%s'", pname);
mysql_query(query);
mysql_store_result();
while(mysql_fetch_row_format(query,"|"))
{
mysql_fetch_field_row(savingstring, "score"); SetPlayerScore(playerid, strval(savingstring));
mysql_fetch_field_row(savingstring, "money"); MoneyGiven[playerid] = strval(savingstring);
mysql_fetch_field_row(savingstring, "level"); PlayerInfo[playerid][pLevel] = strval(savingstring);
mysql_fetch_field_row(savingstring, "vip"); PlayerInfo[playerid][pVIP] = strval(savingstring);
mysql_fetch_field_row(savingstring, "Tutorial"); PlayerInfo[playerid][pTutorial] = strval(savingstring);
mysql_fetch_field_row(savingstring, "rank"); PlayerInfo[playerid][pRank] = strval(savingstring);
mysql_fetch_field_row(savingstring, "kills"); PlayerInfo[playerid][pKills] = strval(savingstring);
mysql_fetch_field_row(savingstring, "deaths"); PlayerInfo[playerid][pDeaths] = strval(savingstring);
mysql_fetch_field_row(savingstring, "muted"); PlayerInfo[playerid][pMuted] = strval(savingstring);
mysql_fetch_field_row(savingstring, "jailed"); PlayerInfo[playerid][pJailed] = strval(savingstring);
mysql_fetch_field_row(savingstring, "frozen"); PlayerInfo[playerid][pFrozen] = strval(savingstring);
mysql_fetch_field_row(savingstring, "mutedtimes"); PlayerInfo[playerid][pMutedTimes] = strval(savingstring);
mysql_fetch_field_row(savingstring, "jailedtimes"); PlayerInfo[playerid][pJailedTimes] = strval(savingstring);
mysql_fetch_field_row(savingstring, "frozentimes"); PlayerInfo[playerid][pFrozenTimes] = strval(savingstring);
mysql_fetch_field_row(savingstring, "banned"); PlayerInfo[playerid][pBanned] = strval(savingstring);
mysql_fetch_field_row(savingstring, "bannedby"); PlayerInfo[playerid][pBannedBy] = strval(savingstring);
mysql_fetch_field_row(savingstring, "logins"); PlayerInfo[playerid][pLogins] = strval(savingstring);
mysql_fetch_field_row(savingstring, "posx"); PlayerInfo[playerid][pPosX] = strval(savingstring);
mysql_fetch_field_row(savingstring, "posy"); PlayerInfo[playerid][pPosY] = strval(savingstring);
mysql_fetch_field_row(savingstring, "posz"); PlayerInfo[playerid][pPosZ] = strval(savingstring);
mysql_fetch_field_row(savingstring, "posa"); PlayerInfo[playerid][pPosA] = strval(savingstring);
}
So war es als ich nur ein Paar variablen hatte.. Jedoch ist hier ja das gleiche thema das ich oben das SELECT nicht mit 140 variablen in die länge ziehen kann
Auser jemand hat auch für hier einen Zeilen umbruch
3. mysql_query("ALTER TABLE `"#NSAR"_Main` ADD `Ehepartner` var(24) DEFAULT NULL");
Muss Var hier String heißen damit dort Text gespeichert wird?
Das war es erstmal ich danke schonmal im vorraus