У меня есть сайт asp, на котором есть запрос на выбор базы данных IBM AS/400. Если запрос приложения использует только одно имя столбца из таблицы, оно возвращает данные, однако, если у меня было более одного имени столбца в запросе, оно выдает сообщение об ошибке 'Attempted to read or write protected memory. This is often an indication that other memory is corrupt'
. например
SELECT ISDUI FROM PY.F55 <--returns data
or
SELECT ISEMAL FROM PY.F55 <--returns data
SELECT ISDUI, ISEMAL FROM PY.F55 <--error out
Вот код .net:
public int runDB(string cmd, string sub, ref DataSet ds, string type)
{
try
{
if (iDB2DataAdapter1 == null)
{
iDB2DataAdapter1 = new iDB2DataAdapter("", new iDB2Connection(G_AS400conn));
iDB2DataAdapter1.SelectCommand.CommandTimeout = 0;
}
if (iDB2DataAdapter1.SelectCommand.Connection.State != ConnectionState.Open)
iDB2DataAdapter1.SelectCommand.Connection.Open();
iDB2DataAdapter1.SelectCommand.CommandText = @cmd;
if (type == "S")
{
ds.Clear();
rows = iDB2DataAdapter1.Fill(ds);
}
else
{
rows = iDB2DataAdapter1.SelectCommand.ExecuteNonQuery();
}
return rows;
}
catch(Exception ex)
{
//log error message
}
}
Кто-нибудь знает, почему это происходит?
Спасибо.
System.AccessViolationException
? - person Marco   schedule 03.12.2013Options > Debugging > General > Uncheck Suppress JIT optimization on module load
и снова нажмите f5. Это должен быть 7-й вариант снизу (vs2013) - person Marco   schedule 03.12.2013