#c #oracle
#c #Oracle
Вопрос:
Я пытаюсь распечатать все в таблице «СКЛАД». Ниже приведен мой код.
ПРОБЛЕМА: печатается только 3/10 строк.
try
{
env = Environment::createEnvironment(Environment::DEFAULT);
conn = env->createConnection(usr, pass, srv);
Statement* stmt = conn->createStatement("SELECT * FROM warehouses");
/*---------------------CODE-------------------------------*/
ResultSet* rs = stmt->executeQuery();
if (!rs->next())
{
cout << "ResultSet is empty." << endl;
}
else
{
while (rs->next())
{
cout << "Warehouse ID: " << rs->getInt(1) << "Warehouse Name: " << rs->getString(2) << " " << "Location ID: " << rs->getInt(3) << endl;
}
}
/*---------------------CODE-------------------------------*/
conn->terminateStatement(stmt);
env->terminateConnection(conn);
Environment::terminateEnvironment(env);
}
Комментарии:
1. Код выхода, вероятно, вам что-то говорит.
-1073741819
это то же0xC0000005
самое, что означает нарушение доступа в MS Windows. С учетом сказанного я не уверен, почему вы получаете здесь нарушение доступа..2. @drescherjm Я все еще учусь, и, согласно моим заметкам, именно так мы печатаем всю таблицу. Как мне это исправить?
3. Я не знаю, почему этот код имеет нарушение доступа. Я просто хотел научить вас читать код. Я подключил
-1073741819
калькулятор Windows в режиме программиста и увидел, что значение былоC0000005
в шестнадцатеричном формате, что является хорошо известным кодом Windows.