Работа с базой данных

Для работы с базой данных необходимо обратиться к функции 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);