当前位置: 首页>>代码示例>>C++>>正文


C++ ErrorCode::SetError方法代码示例

本文整理汇总了C++中ErrorCode::SetError方法的典型用法代码示例。如果您正苦于以下问题:C++ ErrorCode::SetError方法的具体用法?C++ ErrorCode::SetError怎么用?C++ ErrorCode::SetError使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ErrorCode的用法示例。


在下文中一共展示了ErrorCode::SetError方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Call

ByteArray ConnectorMySQL::Call(const ByteArray &command, ErrorCode &error_code)
{
	if (IsConnected())
	{
		mysql_real_query(&mysql_, command.data(), command.size());
		int error = mysql_errno(&mysql_);
		if (error != 0)
		{
			error_code.SetError(error, mysql_error(&mysql_));
			return ByteArray();
		}

		ByteArray bytes;
		MYSQL_RES *sql_result = mysql_store_result(&mysql_);
		if (sql_result != nullptr)
		{
			mysql_stuff::Serialize(sql_result, &bytes);
			mysql_free_result(sql_result);
		}
		else
		{
			ProcedureMySQL procedure(command);
			if (procedure.HasVariable())
			{
				ByteArray query_variable = procedure.QueryVariableValue();
				mysql_real_query(&mysql_, query_variable.data(), query_variable.size());
				int error = mysql_errno(&mysql_);
				if (error != 0)
				{
					error_code.SetError(error, mysql_error(&mysql_));
					return ByteArray();
				}

				MYSQL_RES *sql_result = mysql_store_result(&mysql_);
				mysql_stuff::Serialize(sql_result, &bytes);
				mysql_free_result(sql_result);
			}
		}
		return bytes;
	}
	else
	{
		throw NotConnected();
	}
}
开发者ID:afa311,项目名称:eddyserver,代码行数:45,代码来源:ConnectorMySQL.cpp

示例2: SetCharacterSet

void ConnectorMySQL::SetCharacterSet(const char *csname, ErrorCode &error_code)
{
	if (IsConnected())
	{
		mysql_set_character_set(&mysql_, csname);
		int error = mysql_errno(&mysql_);
		if (error != 0)
		{
			error_code.SetError(error, mysql_error(&mysql_));
		}
	}
	else
	{
		throw NotConnected();
	}
}
开发者ID:afa311,项目名称:eddyserver,代码行数:16,代码来源:ConnectorMySQL.cpp

示例3: SelectDatabase

void ConnectorMySQL::SelectDatabase(const char *db, ErrorCode &error_code)
{
	if (IsConnected())
	{
		mysql_select_db(&mysql_, db);
		int error = mysql_errno(&mysql_);
		if (error == 0)
		{
			select_db_ = db;
		}
		else
		{
			error_code.SetError(error, mysql_error(&mysql_));
		}
	}
	else
	{
		throw NotConnected();
	}
}
开发者ID:afa311,项目名称:eddyserver,代码行数:20,代码来源:ConnectorMySQL.cpp

示例4: Insert

ByteArray ConnectorMySQL::Insert(const ByteArray &command, ErrorCode &error_code)
{
	if (IsConnected())
	{
		mysql_real_query(&mysql_, command.data(), command.size());
		int error = mysql_errno(&mysql_);
		if (error != 0)
		{
			error_code.SetError(error, mysql_error(&mysql_));
			return ByteArray();
		}

		ByteArray bytes;
		mysql_stuff::SerializeAffectedRowsAndInsertID(mysql_, &bytes);
		return bytes;
	}
	else
	{
		throw NotConnected();
	}
}
开发者ID:afa311,项目名称:eddyserver,代码行数:21,代码来源:ConnectorMySQL.cpp

示例5: Select

ByteArray ConnectorMySQL::Select(const ByteArray &command, ErrorCode &error_code)
{
	if (IsConnected())
	{
		mysql_real_query(&mysql_, command.data(), command.size());
		int error = mysql_errno(&mysql_);
		if (error != 0)
		{
			error_code.SetError(error, mysql_error(&mysql_));
			return ByteArray();
		}

		ByteArray bytes;
		MYSQL_RES *sql_result = mysql_store_result(&mysql_);
		mysql_stuff::Serialize(sql_result, &bytes);
		mysql_free_result(sql_result);
		return bytes;
	}
	else
	{
		throw NotConnected();
	}
}
开发者ID:afa311,项目名称:eddyserver,代码行数:23,代码来源:ConnectorMySQL.cpp


注:本文中的ErrorCode::SetError方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。