Главная / Программирование /
Базы данных для карманного персонального компьютера / Тест 14
Базы данных для карманного персонального компьютера - тест 14
Упражнение 1:
Номер 1
Отметьте основные особенности реляционных баз данных:
Ответ:
 (1) данные хранятся в таблицах 
 (2) на пересечении строки и столбца находится ровно одно значение 
 (3) значения в одном столбце могут иметь разный тип 
 (4) значения в одной строке имеют одинаковый тип 
 (5) строки в реляционной базе данных строго упорядочены 
Номер 2
Какие операции определены над отношениями?
Ответ:
 (1) объединение 
 (2) пересечение 
 (3) выборка 
 (4) вычитание 
 (5) деление 
Номер 3
Какие условия должны быть выполнены, чтобы объект являлся отношением?
Ответ:
 (1) в таблице не должно быть двух одинаковых строк 
 (2) порядок строк в таблице произвольный 
 (3) столбцы соответствуют атрибутам отношения 
 (4) строки в таблице строго упорядочены 
Упражнение 2:
Номер 1
Что является результатом выборки?
Ответ:
 (1) объединение всех записей таблиц 
 (2) объединение неповторяющихся записей таблиц 
 (3) записи, удовлетворяющие заданным условиям 
Номер 2
В каком случае будет создано отношение TestRelation
?
Ответ:
 (1) dataSet.Relations.Add("ID",dataTable1.Columns["TestRelation"],dataTable2.Columns["TestRelation"],true)
 
 (2) dataSet.Relations.Add("TestRelation",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],false)
 
 (3) dataSet.Relations.Add("TestRelation",dataTable1.Columns["TestRelation"],dataTable2.Columns["TestRelation"])
 
Номер 3
Для связи двух таблиц необходимо:
Ответ:
 (1) создать один объект DataSet
 
 (2) создать два объект DataSet
 
 (3) создать собственный класс, объекты которого будут хранить ссылки на таблицы 
Упражнение 3:
Номер 1
Таблица DataTable1
содержит 3 записи, таблица DataTable2
- 5 записей. Какая из таблиц является связанной?
Ответ:
 (1) DataTable1 
 (2) DataTable2 
 (3) зависит от реализации 
Номер 2
Таблица DataTable1
содержит 5 записей, таблица DataTable2
- 3 записи. Какая из таблиц является главной?
Ответ:
 (1) DataTable1
 
 (2) DataTable2
 
 (3) зависит от реализации 
Номер 3
Таблица DataTable1
главная, таблица DataTable2
- связанная. Отметьте возможные варианты из предложенных:
Ответ:
 (1) в DataTable1
- 1 запись, в DataTable2
- 2 записи 
 (2) в DataTable1
- 2 записи, в DataTable2
- 1 запись 
 (3) в DataTable1
- 1 запись, в DataTable2
- 0 записей 
 (4) в DataTable1
- 0 записей, в DataTable2
- 1 запись 
Упражнение 4:
Номер 1
Какая таблица является связанной в данном случае: dataSet.Relations.Add("Customers_Invoices",dataSet.Tables["Customers"].Columns["CustomerID"],dataSet.Tables["Invoices"].Columns["CustomerlD"],true);
Ответ:
 (1) Customers
 
 (2) Invoices
 
 (3) зависит от определения таблиц 
Номер 2
Какое отношение устанавливается в данном случае: dataSet.Relations.Add("Customers_Invoices",dataSet.Tables["Customers"].Columns["CustomerID"],dataSet.Tables["Invoices"].Columns["CustomerlD"],true);
Ответ:
 (1) Customers_Invoices
 
 (2) Customers
 
 (3) Invoices
 
 (4) CustomerlD
 
Номер 3
Какая таблица является главной в данном случае: dataSet.Relations.Add("Customers_Invoices",dataSet.Tables["Customers"].Columns["CustomerID"],dataSet.Tables["Invoices"].Columns["CustomerlD"],true);
Ответ:
 (1) Customers
 
 (2) Invoices
 
 (3) зависит от определения таблиц 
Упражнение 5:
Номер 1
В каком случае каждое значение уникального ключа родительского столбца должно присутствовать в дочернем объекте DataTable
?
Ответ:
 (1) dataSet.Relations.Add("Inv",dataSet.Tables["Invoices"].Columns["InvoicelD"],dataSet.Tables["Invoiceltems"].Columns["InvoicelD"],true);
 
 (2) dataSet.Relations.Add("Inv",dataSet.Tables["Invoices"].Columns["InvoicelD"],dataSet.Tables["Invoiceltems"].Columns["InvoicelD"],false);
 
 (3) dataSet.Relations.Add("Inv",dataSet.Tables["Invoices"].Columns["InvoicelD"],dataSet.Tables["Invoiceltems"].Columns["InvoicelD"]);
 
Номер 2
В каком случае будет создано отношение без ограничения?
Ответ:
 (1) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],true);
 
 (2) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],false);
 
 (3) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"]);
 
Номер 3
В каком случае будет создано отношение с ограничением?
Ответ:
 (1) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],true);
 
 (2) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],false);
 
 (3) dataSet.Relations.Add("Rel",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"]);
 
Упражнение 6:
Номер 1
Как создать отношение на основе составных первичных ключей таблиц?
Ответ:
 (1) создать отдельное отношение для каждого ключа 
 (2) создать массивы первичных ключей родительской и дочерней таблиц, а затем на их основе создать отношение 
 (3) создание отношения возможно только для простых первичных ключей 
Номер 2
В каком случае первичный ключ определен правильно?
Ответ:
 (1) customerTable.PrimaryKey=new DataColumn {customerTable.Columns["CustomerID"]};
 
 (2) invoiceTable.PrimaryKey=new DataColumn[] {invoiceTable.Columns["InvoiceID"]};
 
 (3) invoiceItemTable.PrimaryKey=new DataColumn {invoiceltemTable.Columns["InvoiceltemID"]};
 
Номер 3
Как разорвать отношение Relation
?
Ответ:
 (1) dataSet.Relations.Delete("Relation");
 
 (2) dataSet.Relations.Remove("Relation");
 
 (3) dataSet.Relations.Close("Relation");
 
Упражнение 7:
Номер 1
На основе какого поля создается отношение dataSet.Relations.Add("ID",dataTable1.Columns["Деталь"],dataTable2.Columns["Деталь"],true)
?
Ответ:
 (1) ID 
 (2) деталь 
 (3) это отношение создано неверно 
Номер 2
Какое отношение создано на основе поля "Фамилия"?
Ответ:
 (1) dataSet.Relations.Add("Фамилия",dataTable1.Columns["Адрес"],dataTable2.Columns["Адрес"],true);
 
 (2) dataSet.Relations.Add("Фамилия",dataTable1.Columns["Имя"],dataTable2.Columns["Адрес"],true);
 
 (3) dataSet.Relations.Add("ID",dataTable1.Columns["Фамилия"],dataTable2.Columns["Фамилия"],true);
 
Номер 3
На основе какого поля создано отношение dataSet.Relations.Add("ID",dataTable1.Columns["Товар"],dataTable2.Columns["Товар"],true)
?
Ответ:
 (1) Товар 
 (2) ID 
 (3) это отношение создано неверно 
Упражнение 8:
Номер 1
Что обозначает команда DataColumn[] colArr=dataTable.PrimaryKey;
?
Ответ:
 (1) получение первичного ключа 
 (2) установка первичного ключа 
 (3) копирование в первичный ключ значений из массива 
Номер 2
Что обозначает команда dataTable.PrimaryKey=new DataColumn {dataTable.Columns["ClientID"]};
?
Ответ:
 (1) получение значения поля "ClientID" 
 (2) установка первичного ключа 
 (3) добавление записи "ClientID" 
Номер 3
Какая команда устнавливает поле "Code" в качестве первичного ключа?
Ответ:
 (1) DataColumn[] colArr=dataTable.PrimaryKey;
 
 (2) dataTable.PrimaryKey=new DataColumn {dataTable.Columns["Code"]};
 
 (3) dataTable.PrimaryKey=new DataColumn {dataTable.Columns["ID"]};
 
Упражнение 9:
Номер 1
В каких случаях первичный ключ может быть представлен массивом полей?
Ответ:
 (1) когда требуется получить более точное значение 
 (2) когда одного поля недостаточно для определения уникальности записи 
 (3) первичный ключ не может быть представлен несколькими полями 
Номер 2
Каким образом должна быть объявлена переменная val
для выполнения команды val=dataTable.PrimaryKey
?
Ответ:
 (1) DataColumn[] val;
 
 (2) DataColumn val;
 
 (3) DataRow[] val;
 
 (4) DataRow val;
 
Номер 3
Каким образом должна быть объявлена переменая val для выполнения команды val.Relations.Add("ID",dataTable1.Columns["Code"],dataTable2.Columns["Code"],true)
?
Ответ:
 (1) DataColumn val;
 
 (2) DataTable val;
 
 (3) DataSet val;
 
Упражнение 10:
Номер 1
Какое значение возвращает метод GetChildRows
?
Ответ:
 (1) массив дочерних объектов DataRow
текущего объекта DataRow
, основываясь на объекте Data-Relation
 
 (2) родительский объект DataRow
текущего объекта DataRow
, основываясь на объекте DataRelation
 
 (3) массив родительских объектов DataRow
текущего объекта DataRow
, основываясь на объекте DataRi'latiou
 
Номер 2
Какое значение возвращает метод GetParentRow
?
Ответ:
 (1) массив дочерних объектов DataRow
текущего объекта DataRow
, основываясь на объекте Data-Relation
 
 (2) родительский объект DataRow
текущего объекта DataRow
, основываясь на объекте DataRelation
 
 (3) массив родительских объектов DataRow
текущего объекта DataRow
, основываясь на объекте DataRi'latiou
 
Номер 3
Какое значение возвращает метод GetParentRows
?
Ответ:
 (1) массив дочерних объектов DataRow
текущего объекта DataRow
, основываясь на объекте Data-Relation
 
 (2) родительский объект DataRow
текущего объекта DataRow
, основываясь на объекте DataRelation
 
 (3) массив родительских объектов DataRow
текущего объекта DataRow
, основываясь на объекте DataRi'latiou
 
Упражнение 11:
Номер 1
Чему равно минимальное количество таблиц в объекте DataSet
?
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
Номер 2
Чему равно минимальное количество отношений в объекте DataSet
?
Ответ:
 (1) 0 
 (2) 1 
 (3) 2 
Номер 3
Из каких коллекций состоит объект DataSet
?
Ответ:
 (1) из коллекции таблиц 
 (2) из коллекции отношений 
 (3) из коллекции таблиц и отношений 
Упражнение 12:
Номер 1
Для чего предназначено свойство DataSet.Relation
?
Ответ:
 (1) для создания родительских отношений между объектами DataTable
и DataSet
 
 (2) для создания родительских отношений между двумя объектами DataTable
 
 (3) для создания родительских отношений между двумя объектами DataSet
 
Номер 2
Что делает метод DataSet.Relations.Add()
?
Ответ:
 (1) добавляет связанную таблицу 
 (2) добавляет новое поле 
 (3) создает отношение между двумя таблицами в DataSet
 
Номер 3
В каком случае отношению будет присвоено стандартное имя?
Ответ:
 (1) DataSet.Relations.Add(DataColumn,DataColumn)
 
 (2) DataSet.Relations.Add(DataColumn[],DataColumn[])
 
 (3) DataSet.Relations.Add(String, DataColumn, DataColumn)