Примеры использования dbFacade. (DELETE INSERT UPDATE)

И немного рекламы: лучший орбитрек . полімерні підлоги

Это продолжение серии моих статей.
Философия dbFacade. Часть 1
Философия dbFacade. Часть 2.1
Философия dbFacade. Часть 2.2
Примеры использования dbFacade. (SELECT)

Начнем, пожалуй, с удаления данных. В dbFacade представлено 4 перезагрузки метода Delete, который удаляет записи из таблицы. Самый простой — удаляет просто все данные. Ему достаточно передать имя таблицы.

db.Delete("Song"); //удалить все записи из таблицы Song

Вторая перезагрузка:

int[] ids = {1,2};
int result = db.Delete("Song", "id", ids); //удалить записи у которых поле id равно одному из перечисленных значений ids

Третий вариант чуть проще предыдущего. Здесь вы сами пишите условие:

int result = db.Delete("Song", "id = 1"); //удалить запись из таблицы Song с id равным 1

Четвертый и самый интересный вариант — с использованием класса ParametersCollection для передачи значений условия в виде параметров:

ParametersCollection parameters = new ParametersCollection();
parameters.Add("", DateTime.Now.Date, DbType.DateTime);
int result = db.Delete("CD", "publish > @date", parameters); //удалить записи, дата публикации которых, больше текущей даты

В качестве результата выполнения функции Delete возвращается число. В случае успеха возвращается 0, иначе больше нуля.

Для вставки новых записей, dbFacade предлагает две функции — Insert и InsertMany. Insert более гибкая, однако InsertMany может добавить в таблицу сразу несколько записей за один сеанс. С другой стороны, если вручную открывать и закрывать соединение, то можно использовать и Insert.

ParametersCollection[] parameters = new ParametersCollection[2];
parameters[0] = new ParametersCollection();
parameters[0].Add("title", "Исполнитель 1", DbType.String);
parameters[0].Add("publish", DateTime.Parse("1.2.2010"), DbType.DateTime);

parameters[1] = new ParametersCollection();
parameters[1].Add("title", "Исполнитель 2", DbType.String);
parameters[1].Add("publish", DateTime.Parse("1.2.2010"), DbType.DateTime);

int result = db.InsertMany("CD", parameters); //вставка сразу нескольких записей

И обычный Insert:

ParametersCollection parameters = new ParametersCollection();
parameters.Add("title", "Новый Исполнитель", DbType.String);
parameters.Add("publish", DateTime.Parse("8.05.2011"), DbType.DateTime);

int result = db.Insert("CD", parameters); //вставка одной записи

Оба приведенных метода вставки в качестве результата возвращают числовое значение. Но если InsertMany возвращает 0 в том смысле, что функция отработала успешно, то Insert возвращает Id последеней вставленной записи. Это относится как к MSSQL, так и к SQLite.

Изменение или обновление данных (Update) работает так же, как и Insert, с использованием класса ParametersCollection.

ParametersCollection parameters = new ParametersCollection();
parameters.Add("title", "Новый Исполнитель", DbType.String);
parameters.Add("publish", DateTime.Parse("8.05.2011"), DbType.DateTime);

int result = db.Update("CD", parameters, "id = 1"); //изменить данные таблицы CD записи, поле id которой равен 1

Вот в принципе и все что можно использовать при работе с dbFacade. Удачного вам кодинга.

Популярность: 9%

Теги: , ,

Если у вас возникли вопросы, вы можете оставить их в комментариях

Бесплатные частные объявления в разделе "заказ тортов"

Комментарии к статье

Один ответ на “Примеры использования dbFacade. (DELETE INSERT UPDATE)”

Оставить комментарий

(обязательно)

(обязательно)


 

MAXCACHE: 0.32MB/0.00036 sec