В настоящее время у меня есть вызов sql, возвращающий набор данных из базы данных MSSQL, и я хочу взять столбец из этих данных и вернуть идентификаторы на основе этого столбца из базы данных ORACLE. Я могу сделать это по одному, но для этого требуется несколько вызовов, мне интересно, можно ли это сделать одним вызовом.
String sql=String.Format(@"Select DIST_NO
FROM DISTRICT
WHERE DIST_DESC = '{0}'", row.Table.Rows[0]["Op_Centre"].ToString());
Над строкой, которую я использую для возврата одного идентификатора за раз. Я знаю, что {0} можно использовать для форматирования вашего значения в строку, и, возможно, есть способ сделать это с помощью таблицы данных.
Также для использования нескольких значений в предложении where это будет:
String sql=String.Format(@"Select DIST_NO
FROM DISTRICT
WHERE DIST_DESC in ('{0}')", row.Table.Rows[0] ["Op_Centre"].ToString());
Хотя я понимаю, что все это можно сделать, мне интересно, есть ли простой способ добавить все это в строку sql за один вызов?
Когда я пишу это, я понимаю, что могу разбить строку на разделы, а затем просто добавить каждое значение строки в строку SQL в предложении "WHERE DIST_DESC IN (" ...
Мне все еще любопытно посмотреть, есть ли другой способ, и, поскольку кто-то еще может столкнуться с этой проблемой, я опубликую решение, если я его разработаю.
Заранее спасибо.