Для работы с базой данных необходимо обратиться к функции app.SqlWork().
Пример кода:
using (var sqlCmd = app.SqlWork())
{
tablesInfo tables = app.getTableOfType(1)[0];
sqlCmd.sql = string.Format(
«SELECT \»{0}\» FROM {1}.{2} WHERE \»{0}\» <> :id limit 10»,
tables.pkField,
tables.nameSheme,
tables.nameDB);
IParams[] Params = new Params[]
{
new Params()
{
_paramName=«id»,
type = DbType.Int32,
value = 1
}
};
sqlCmd.Execute(false, Params);
string result = ««;
while (sqlCmd.CanRead())
{
result += «Строка с id = «
+ sqlCmd.GetValue(tables.pkField)+»\n»;
}
}
В данном примере мы берем первую таблицу со слоем:
tablesInfo tables = app.getTableOfType(1)[0];
Присваиваем к «sqlCmd.sql» запрос к БД:
sqlCmd.sql = string.Format(
«SELECT \»{0}\» FROM {1}.{2} WHERE \»{0}\» <> :id limit 10»,
tables.pkField,
tables.nameSheme,
tables.nameDB);
Выполняем запрос в базу:
bool Execute(bool IsNonQuery);
bool Execute(bool IsNonQuery, IParams[] paramArrya);
Если IsNonQuery получает true, результат выполнения не выводится. Переменная paramArrya содержит массив параметров для запроса.
Выполняем проверку на получение следующей строки:
bool CanRead();
Получаем значения из ячейки:
object GetValue (int position);
object GetValue (string columnName);
T GetValue (int position);
T GetValue (string columnName);
Используя функции GetValue в параметре можно указывать простые типы, такие как int, string, Double, а также типа Nullable, а также массивы, например <int?[]>. Плагин сам их попытается преобразовать, а если произойдет ошибка преобразования, то он вернет следующее значение:
return default(T);
Свежие комментарии