Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > проверка наличия строки в базе


Автор: xber9 14.3.2013, 15:39
народ пмогите 
есть масисв стирок каждую строкку нужно занести в  базу 
делаю так

Код

            for (int i = 0; i < mas1.Length; i++) {
                mstritsTableAdapter.Insert(mas1[i]);
                mstritsTableAdapter.Fill(this.interes1_metrodataDataSet.mstrits);
            }


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

Автор: Данкинг 14.3.2013, 15:57
Цитата(xber9 @  14.3.2013,  16:39 Найти цитируемый пост)
есть масисв стирок каждую строкку  

Масисв стирок, ужас, да ещё "строкку" там.
Цитата(xber9 @  14.3.2013,  16:39 Найти цитируемый пост)
но как мне добавить условие  чтобы при наличии такой строки в базе она не добавлялась  

Поставить в самой таблице уникальный ключ на данное поле, а в программе отлавливать ошибку.

Автор: xber9 14.3.2013, 16:07
ключ есть а как обработать ошибку чтобы прога писала мол такая то строка уже есть

Автор: xber9 15.3.2013, 10:07
НУ ПОДСКАЖИТЕ ЖЕ

Автор: Kolovorot 25.3.2013, 10:33
Попробуй получить строку с таким же значение ключа. Если получишь выводи сообщение, что запись с таким значением ключа уже есть. Если не получишь вставляй новую запись.
Как вариант:
Код

            DataSet1.TableNameRow row = ds.TableName.FirstOrDefault(r => r.nomenclature1cId == 1);
            if (row != null)
                Console.WriteLine("");
            else
                adapter.Insert(mas1[i]);

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)