mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-15 08:21:28 +00:00
GetSpellColumns converted to QueryDatabase
This commit is contained in:
parent
87efd22394
commit
b7bcd13cbd
@ -31,7 +31,7 @@ void ImportBaseData(SharedDatabase *db);
|
|||||||
int main(int argc, char **argv) {
|
int main(int argc, char **argv) {
|
||||||
RegisterExecutablePlatform(ExePlatformClientImport);
|
RegisterExecutablePlatform(ExePlatformClientImport);
|
||||||
set_exception_handler();
|
set_exception_handler();
|
||||||
|
|
||||||
LogFile->write(EQEMuLog::Status, "Client Files Import Utility");
|
LogFile->write(EQEMuLog::Status, "Client Files Import Utility");
|
||||||
if(!EQEmuConfig::LoadConfig()) {
|
if(!EQEmuConfig::LoadConfig()) {
|
||||||
LogFile->write(EQEMuLog::Error, "Unable to load configuration file.");
|
LogFile->write(EQEMuLog::Error, "Unable to load configuration file.");
|
||||||
@ -55,26 +55,20 @@ int main(int argc, char **argv) {
|
|||||||
ImportSpells(&database);
|
ImportSpells(&database);
|
||||||
ImportSkillCaps(&database);
|
ImportSkillCaps(&database);
|
||||||
ImportBaseData(&database);
|
ImportBaseData(&database);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int GetSpellColumns(SharedDatabase *db) {
|
int GetSpellColumns(SharedDatabase *db) {
|
||||||
char errbuf[MYSQL_ERRMSG_SIZE];
|
|
||||||
const char *query = "DESCRIBE spells_new";
|
|
||||||
MYSQL_RES *result;
|
|
||||||
MYSQL_ROW row;
|
|
||||||
int res = 0;
|
|
||||||
if(db->RunQuery(query, (uint32)strlen(query), errbuf, &result)) {
|
|
||||||
while(row = mysql_fetch_row(result)) {
|
|
||||||
++res;
|
|
||||||
}
|
|
||||||
mysql_free_result(result);
|
|
||||||
} else {
|
|
||||||
LogFile->write(EQEMuLog::Error, "Error in GetSpellColumns query '%s' %s", query, errbuf);
|
|
||||||
}
|
|
||||||
|
|
||||||
return res;
|
const std::string query = "DESCRIBE spells_new";
|
||||||
|
auto results = db->QueryDatabase(query);
|
||||||
|
if(!results.Success()) {
|
||||||
|
LogFile->write(EQEMuLog::Error, "Error in GetSpellColumns query '%s' %s", query.c_str(), results.ErrorMessage().c_str());
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return results.RowCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ImportSpells(SharedDatabase *db) {
|
void ImportSpells(SharedDatabase *db) {
|
||||||
@ -104,7 +98,7 @@ void ImportSpells(SharedDatabase *db) {
|
|||||||
auto split = SplitString(escaped, '^');
|
auto split = SplitString(escaped, '^');
|
||||||
int line_columns = (int)split.size();
|
int line_columns = (int)split.size();
|
||||||
std::string sql;
|
std::string sql;
|
||||||
|
|
||||||
if(line_columns >= columns) {
|
if(line_columns >= columns) {
|
||||||
sql = "INSERT INTO spells_new VALUES(";
|
sql = "INSERT INTO spells_new VALUES(";
|
||||||
for(int i = 0; i < columns; ++i) {
|
for(int i = 0; i < columns; ++i) {
|
||||||
@ -170,12 +164,12 @@ void ImportSkillCaps(SharedDatabase *db) {
|
|||||||
char buffer[2048];
|
char buffer[2048];
|
||||||
while(fgets(buffer, 2048, f)) {
|
while(fgets(buffer, 2048, f)) {
|
||||||
auto split = SplitString(buffer, '^');
|
auto split = SplitString(buffer, '^');
|
||||||
|
|
||||||
if(split.size() < 4) {
|
if(split.size() < 4) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int class_id, skill_id, level, cap;
|
int class_id, skill_id, level, cap;
|
||||||
class_id = atoi(split[0].c_str());
|
class_id = atoi(split[0].c_str());
|
||||||
skill_id = atoi(split[1].c_str());
|
skill_id = atoi(split[1].c_str());
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user