КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
DataColumn
Тип DataColumn представляет один столбец в объекте DataTable. Вообще-то множество всех объектов DataColumn, содержащихся в данном объекте DataTable, содержит всю информацию схемы таблицы. Например, если понадобится создать копию таблицы Inventory из базы данных AutoLot, нужно будет создать четыре объекта DataColumn, по одному для каждого столбца (CarID, Make, Color и PetName). После создания объектов DataColumn они обычно добавляются в коллекцию столбцов типа DataTable (с помощью свойства Columns). Возможно, вы уже знаете, что любому столбцу в таблице базы данных можно назначить набор ограничений (в виде первичного ключа, значения по умолчанию, разрешения только на чтение информации и т.д.). Кроме того, каждый столбец таблицы должен относиться к одному из разрешенных в СУБД типов данных. К примеру, схема таблицы Inventory требует, чтобы столбец CarID содержал целые числа, а столбцы Make, Color и PetName — массив символов. Класс DataColumn имеет ряд свойств для указания таких моментов:
Продолжаем создание проекта SimpleDataSet (и демонстрацию применения типа DataColumn). Предположим, что вам нужно смоделировать столбцы таблицы Inventory. Поскольку столбец CarID должен быть первичным ключом таблицы, его необходимо создать только для чтения, содержащим уникальные значения и не допускающим пустые значения (с помощью свойств Readonly, Unique и AllowDBNull). Вставьте в класс Program новый метод FillDataSet(), предназначенный для создания четырех объектов DataColumn. Он принимает в качестве единственного параметра объект DataSet: Обратите внимание, что при конфигурировании объекта carIDColumn было присвоено значение свойству Caption. Это позволяет определить строковое значение для отображения при выводе данных, которое может отличаться от имени столбца (имена столбцов в таблицах баз данных обычно более удобны для программирования (например, au_fname), чем для отображения (например, Author First Name)). По той же причине здесь задано заглавие столбца PetName, т.к. название столбца "Дружественное имя" понятнее конечному пользователю, чем PetName. Одним из аспектов DataColumn, допускающим настройку, является возможность автоинкремента (autoincrement). Если в какую-либо таблицу добавляется новая строка, то значение автоинкрементного поля устанавливается автоматически, на основании предыдущего значения и шага автоинкремента. Это удобно, когда нужно, чтобы в каком-либо столбце не было повторяющихся значений (обычно это первичный ключ). Такое поведение регулируется свойствами Autoincrement, AutoIncrementSeed и AutoIncrementStep. Значение AutoIncrementSeed используется для задания начального значения в столбце, AutoIncrementStep — для задания числа, которое прибавляется для каждого последующего значения. Рассмотрим следующую модификацию создания carIDColumn: static void FillDataSet(DataSet ds){ DataColumn carIDColumn = new DataColumn("CarID", typeof(int)); carIDColumn.Caption = "Car ID"; carIDColumn.ReadOnly = true; carIDColumn.AllowDBNull = false; carIDColumn.Unique = true; carIDColumn.AutoIncrement = true; carIDColumn.AutoIncrementSeed = 0; carIDColumn.AutoIncrementStep = 1;...Здесь объект carIDColumn настроен так, что при добавлении новых строк его значения увеличиваются на 1. Поскольку первоначальное значение задано равным 0, в столбце будут содержаться числа 0, 1, 2, 3 и т.д. Обычно тип DataColumn не применяется обособленно, а вставляется в нужный объект DataTable. Для демонстрации создайте новый объект DataTable и вставьте каждый объект DataColumn в коллекцию столбцов с помощью свойства Columns: // Добавление объектов DataColumn в DataTableDataTable inventoryTable = new DataTable("Inventory");inventoryTable.Columns.AddRange(new DataColumn[] { carIDColumn, carMakeColumn, carColorColumn, carPetName });Теперь объект DataTable содержит четыре объекта DataColumn, которые представляют схему находящейся в памяти таблицы Inventory. Но пока эта таблица еще не содержит данных и не входит в коллекцию таблиц, принадлежащих конкретному DataSet. Мы сделаем и то, и то, а начнем с заполнения таблицы данными с помощью объектов DataRow.
Дата добавления: 2015-05-09; Просмотров: 562; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |