Я хочу, чтобы выполнить (INSERT .. SELECT
) заявление так:Как выполнить INSERT..SELECT заявление
cmdTxt.Clear();
cmdTxt.Append(" INSERT INTO aast:sc1pen ");
cmdTxt.Append(" SELECT action_month,action_year,200,emp_num,penalty_action , ");
cmdTxt.Append(" 'APPLY ' || penalty_reason || ' day ' , 0 , 0 ");
cmdTxt.Append(" FROM sc2pen WHERE sal_year = ? and sal_month = ? and penalty_type = 1 and pay_type = 0 ");
myIfxCmd.CommandText = cmdTxt.ToString();
myIfxCmd.Parameters.Clear();
myIfxCmd.Parameters.Add("sal_year", IfxType.Integer);
myIfxCmd.Parameters.Add("sal_month", IfxType.Integer);
myIfxCmd.Parameters[0].Value = penaltyDt.Rows[0]["sal_year"];
myIfxCmd.Parameters[1].Value = penaltyDt.Rows[0]["sal_month"];
Теперь я запутался я должен использовать
myIfxCmd.ExecuteNonQuery();
Чтобы выполнить запрос как это, хотя это включает операцию чтения?
Вы проверили его? – Gnqz
Да, используйте myIfxCmd.ExecuteNonQuery(); потому что вы не возвращаете результат клиенту. Выбор используется только для источника данных для заполнения вставки. –