Создание базы данных в среде SQL SERVER 2012

 

Содержание


Вступление

. Установка «Microsoft SQL SERVER 2012»

. Создание файла данных и журнала транзакций

. Создание и заполнение таблиц

. Создание запросов и фильтров

. Хранимые процедуры

. Пользовательские функции

. Диаграммы и триггеры

. Создание проекта. Подключение файла данных к проекту

. Главная кнопочная форма. Создание простых ленточных форм для работы с данными

. Создание сложных ленточных форм для работы с данными

. Создание табличных форм

. Отчёты

server файл транзакция таблица


Вступление


В широком смысле слова база данных (БД) - это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области.

Для удобной работы с данными их необходимо структурировать, т.е. ввести определенные соглашения о способах их представления.

База данных (в узком смысле слова) - поименованная совокупность структурированных данных относящихся к некоторой предметной области. В реальной деятельности в основном используют системы БД.

Любая база данных должна обладать следующими свойствами:

·интегрированностью, направленной на решение широкого круга задач;

·структурированностью;

·взаимосвязанностью;

·независимостью описания данных от прикладных программ.

Система баз данных (СБД) - это компьютеризированная система хранения структурированных данных, основная цель которой - хранить информацию и предоставлять ее по требованию.

Системы БД существуют и на малых, менее мощных компьютерах, и на больших, более мощных. На больших компьютерах применяют в основном многопользовательские системы, на малых - однопользовательские.

Однопользовательская система (single-user system) - это система, в которой в одно и то же время к БД может получить доступ не более одного пользователя.

Многопользовательская система (multi-user system) - это система, в которой в одно и то же время к БД может получить доступ несколько пользователей.

Основная задача большинства многопользовательских систем - позволить каждому отдельному пользователю работать с системой как, с однопользовательской.

Система баз данных содержит четыре основных элемента: данные, аппаратное обеспечение, программное обеспечение и пользователи.

Данные в БД являются интегрированными и общими.

Интегрированные - значит, данные можно представить как объединение нескольких, возможно перекрывающихся, отдельных файлов данных. (Например, имеется файл, содержащий данные о студентах - фамилию, имя, отчество, дату рождения, адрес и т.д., а другой - о спортивной секции. Необходимые данные о студентах, посещающих секцию, можно получить путем обращения к первому файлу).

Общие - значит, отдельные области данных могут использовать различные пользователи, т.е. каждый из этих пользователей может иметь доступ к одной и той же области данных, даже одновременно. (Например, одни и те же данные БД о студентах может одновременно использовать студенческий отдел кадров и деканат).

К аппаратному обеспечению относятся:

накопители для хранения информации вместе с подсоединенными устройствами ввода-вывода, каналами ввода-вывода и т.д.;

процессор (или процессоры) вместе с основной памятью, которая используется для поддержки работы программного обеспечения системы.

Между собственно данными и пользователями располагается уровень программного обеспечения. Ядром его является система управления базами данных (database management system - DBMS), или диспетчер БД (database manager).

Система управления базами данных (СУБД) - это комплекс программных и языковых средств, необходимых для создания БД, поддержания их в актуальном состоянии и организации поиска в них необходимой информации.

Основная функция СУБД - это предоставление пользователю БД возможности работы с ней, не вникая в детали на уровне аппаратного обеспечения. Т.е. все запросы пользователя к БД, добавление и удаление данных, выборки, обновление данных - все это обеспечивает СУБД. Иными словами, СУБД поддерживает пользовательские операции высокого уровня. Сюда включены и операции, которые можно выполнить с помощью языка SQL.

SQL - это специальные язык БД. Сейчас он поддерживается большинством СУБД, он является официальным стандартом языка для работы с реляционными системами. Название SQL вначале было аббревиатурой от Structured Query Language (язык структурированных запросов), сейчас название языка уже не считается аббревиатурой, т.к. функции его расширились и не ограничиваются только созданием запросов.

СУБД - это не единственный программный компонент системы, хотя и наиболее важный. Среди других - утилиты, средства разработки приложений, средства проектирования, генераторы отчетов и т.д.

Пользователей СБД можно разделить на три группы:

Прикладные программисты. Отвечают за написание прикладных программ, использующих БД. Для этих целей применимы различные языки программирования. Прикладные программы выполняют над данными стандартные операции - выборку, вставку, удаление, обновление - через соответствующий запрос к СУБД. Такие программы бывают простыми - пакетной обработки, или оперативными приложениями - для поддержки работы конечного пользователя.

Конечные пользователи. Работают с системами БД непосредственно через рабочую станцию или терминал. Конечный пользователь может получить доступ к БД, используя оперативное приложение или интегрированный интерфейс самой СУБД (такой интерфейс тоже является оперативным приложением, но встроенным). В большинстве систем есть хотя бы одно такое встроенное приложение - процессор языка запросов(или командный интерфейс). Язык SQL - пример языка запросов для БД. Кроме языка запросов в современных СУБД, как правило, есть интерфейсы, основанные на меню и формах - для непрофессиональных пользователей. Понятно, что командный интерфейс более гибок, содержит больше возможностей.

Администраторы БД. Отвечают за создание БД, технический контроль, обеспечение быстродействия системы, ее техническое обслуживание.

СУБД имеют свою архитектуру. В процессе разработки и совершенст-вования СУБД предлагались различные архитектуры, но самой удачной оказалась трехуровневая архитектура, предложенная исследовательской группой ANSI/SPARC американского комитета по стандартизации ANSI (American National Standards Institute).

Клиентами сети являются компьютеры пользователей, подключенные к сети. Клиенты получают доступ к серверу через сеть. Иногда клиенты сети называют клиентскими компьютерами.

Сервер сети - компьютер, который управляет сетью. Все ресурсы сервера доступны клиентам сети, то есть любое изменения данных на сервере сразу видно всем клиентам сети.

Внешний уровень - это уровень пользователя. По сути, это совокупность внешних представлений данных, которые обрабатывают приложения и какими их видит пользователь на экране. Это может быть таблица с отсортированными данными, с примененным фильтром, форма, отчет, результат запроса. Внешние представления взаимосвязаны, т.е. из одного внешнего представления можно получить другое.

Концептуальный уровень - центральный. Здесь БД представлена в наиболее общем виде, который объединяет данные, используемые всеми приложениями. Т.е. это обобщенная модель предметной области, для которой созданы БД. Можно сказать, что концептуальный уровень формируется при создании таблиц (определение их полей, типов, свойств), связей, а так же при заполнении таблиц.

Физический уровень - собственно данные, расположенные на внешних носителях.

Классификация моделей данных

Ядром любой БД является модель данных.

Модель данных - это совокупность структур данных и операций их обработки.

СУБД имеет 3-х уровневую архитектуру, то понятие модели данных связано с каждым уровнем.

Физическая модель данных связана с организацией внешней памяти и структур хранения, используемых в данной операционной среде.

На концептуальном уровне модели данных наиболее важны для разработчиков БД, т.к. именно ими определяется тип СУБД.

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

Кроме моделей данных, соответствующих трем уровням архитектуры СУБД, существуют предшествующие им, не связанные с компьютерной реализацией. Они служат переходным звеном от реального мира к БД. Это класс инфологических (семантических) моделей.

Инфологические (семантические) модели данных используются на ранних стадиях проектирования БД.

Дата логические модели данных уже поддерживаются конкретной СУБД.

Физические модели данных связаны с организацией данных на носителях.

Документальные модели данных соответствуют слабо структурированной информации, ориентированной на свободные форматы документов на естественном языке.

Дескрипторные модели данных - самые простые, широко использовались раньше.

В них каждому документу соответствует дескриптор - описатель, который имеет жёсткую структуру и описывает документ в соответствии с заранее определенными характеристиками.

Тезаурусные модели данных основаны на принципе организации словарей. Содержат языковые конструкции и принципы их взаимодействия в заданной грамматике. Эти модели используются, например, в системах-переводчиках.

Объектно-ориентированная модель перекликается с семантическими моделями данных. Принципы похожи на принципы объектно-ориентированных языков программирования. Структура таких моделей графически представима в виде дерева, узлами которого являются объекты. Свойства объектов описываются типом.

Объекты иерархической модели данных связанны иерархическими отношениями и образуют ориентированный граф. Основные понятия иерархических структур: уровень, узел (совокупность свойств данных, описывающих объект), связь.

В сетевой модели данных при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.

В реляционной модели данных данные представлены только в виде таблиц.

Реляционные модели данных

Реляционная модель состоит из трех взаимосвязанных частей, которые кратко можно назвать объекты, целостность данных и операторы.

Отношением называется вся таблица, отвечающая определенным свойствам (о которых более подробно - ниже).

Отношение характеризуется следующими понятиями:

Атрибут соответствует столбцу этой таблицы, а именно - свойствам объектов, сведения о которых хранятся в ней. В конкретных СУБД атрибуты часто называют полями.

Первичный ключ - это атрибут (или множество атрибутов), значения которого уникально идентифицируют кортежи (записи).

Кортеж соответствует заполненной строке таблицы. В конкретных СУБД кортежи называют записями.

Степень отношения - количество его атрибутов.

Кардинальное число - количество кортежей в отношении в текущий момент времени.

Домен - это общая совокупность значений, из которой берутся конкретные значения для конкретного атрибута.

Файл данных - файл, находящийся на локальном компьютере или на сервере, который содержит внутри себя структуру данных. К структуре данных относятся таблицы, запросы и фильтры, а также хранимые процедуры, пользовательские функции, диаграммы и триггеры.

Объект связи - объект языка программирования, осуществляющий связь между файлом данных и интерфейсом информационной системы;

Интерфейс информационной системы - комплекс средств, осуществляющий взаимодействие системы с конечными пользователями. Он может находиться как на клиентском компьютере, так и на сервере.

Домены

Домен - это общая совокупность значений, из которой берутся конкретные значения для конкретного атрибута.

Домены более точно можно определить как именованное множество скалярных значений одного типа. Эти скалярные значения называют скалярами. По сути, это наименьшая семантическая (смысловая) единица данных. У скаляров нет внутренней структуры, т.е. они не разложимы в данной реляционной модели.

Например, если имеется атрибут (свойство объекта) «ФИО», он предусматривает скаляры, содержащие фамилию, имя и отчество. Конечно, эти скаляры можно еще разбить на буквы, но тогда будет утрачен нужный смысл. То есть для данной модели наименьшими семантическими единицами данных будут именно фамилия, имя и отчество.

Основное назначение доменов - ограничение сравнения различных по смыслу атрибутов.

Отношения

С отношением связаны понятия переменной отношения и значения отношения.

Переменная отношениям - обычная переменная, т.е. именованный объект, значение которого может изменяться со временем (по сути - это множество заданных атрибутов данного отношения).

Значение отношения - значение переменной отношения в конкретный момент времени (по сути - это сохраненные кортежи отношения).

Свойства отношений

. Нет одинаковых кортежей. Это следует из того, что тело отношения определено как математическое множество кортежей, а множество по определению не содержит одинаковых элементов.

. Кортежи не упорядочены. Это следует также из того, что тело отношения определено как математическое множество кортежей. А математическое множество по определению не упорядочено. Именно поэтому в отношении не существует таких понятий, как «следующий», «предыдущий», «второй кортеж» и т.п.

. Атрибуты не упорядочены. Это следует из того, что заголовок отношения определен как математическое множество атрибутов. А множество не упорядочено по определению. Т.е. опять нет понятий «первый атрибут», «следующий атрибут» и т.п.

. Все значения атрибутов неделимы. Это следствие того, что каждый атрибут определен на своем домене, а домен - множество неделимых скаляров.

Целостность реляционных данных

В любой момент времени любая БД содержит некоторые определенные значения атрибутов, которые выражает конкретное состояние объекта реального мира. Следовательно, БД нуждается в определении правил целостности, необходимых для того, чтобы данные не вступили в противоречие с реальным миром. Такие правила целостности являются специфическими для каждой БД. Это, по сути, информирование СУБД об ограничениях реального мира, Например, имя - только текстовое значение, значения веса, роста - только положительные и т.п.

Но таких правил целостности недостаточно - не менее важно, чтобы данные внутри самой БД не противоречили друг другу.

Для предотвращения подобных ситуаций существуют общие правила целостности реляционных данных. Эти правила связаны с первичными и внешними ключами.значения

Осложнения при обеспечении целостности данных могут быть вызваны неопределенными или отсутствующими значениями. Например, в БД по произведениям искусства не известен автор картины; в БД Школа некоторые дети - сироты (нет родителей) и т.п.

Для решения проблем отсутствия значений Код предложил ввести специальные метки, названные им Null-значениями, которые определил так: если данный кортеж имеет Null-значение данного атрибута, то это означает, что в нем значение атрибута отсутствует.

Это не то же, что числовой 0 или пробел, это вообще не значение, а только метка - обозначение отсутствия любого значения.

Большинство современных реляционных СУБД поддерживают Null-значения.

С Null-значениями связано второе правило целостности.

Правило целостности объектов:

Ни один элемент первичного ключа базового отношения не может быть Null-значением.

Это правило объясняется следующим: кортежи отношений соответствуют объектам реального мира; по определению эти объекты различимы, т.е. некоторым образом опознаваемы; первичные ключи выполняют функцию уникальной идентификации объектов; если невозможно идентифицировать объект, то нельзя сказать существует ли он вообще.

Необходимо сделать некоторые уточнения по этому правилу:

) это правило касается только базовых отношений (т.е. не вычисляемых, не производных);

) правило применимо только для первичных ключей, а для альтернативных ключей Null-значения могут быть запрещены или разрешены.

Язык SQL

Реляционные операции реализуются на языке SQL. Действующим на данный момент стандартом является принятая Американским национальным институтом стандартов (ANSI) версия SQL92.

Как и любой язык программирования, язык SQL имеет свои правила записи инструкций. Основные из них:

. Запятая используется для разделения элементов списков. Например, списка имен полей.

. Для задания имен полей, которые содержат недопустимые символы (например, пробел), используются квадратные скобки. Например, [Дата Рождения].

. Если в запрос включены поля нескольких таблиц, то используется полное имя поля, которое состоит из имени таблицы и имени поля, разделенных точкой. Например, Сотрудники.Фамилия.

. Символьные строки заключаются в апострофы или кавычки.

. В конце инструкции ставиться точка с запятой (;).

. В инструкциях SQL, разбитых на несколько строк, можно использовать отступы, которые указывают на продолжение предыдущей строки.

Основным видом запроса на SQL является SELECT - запрос на выборку. Его общий вид:


SELECT <список имен полей> (если все поля, то *)

FROM <имя таблицы>

[WHERE <условия выбора>] (можно использовать <, >, =, BETWEEN, AND, NOT, OR)

[GROUP BY <имена полей>] (группировка)

[ORDER BY <имена полей>] (сортировка)


Примеры:

) Вывести из таблицы Сотрудники имя, фамилию, адрес и телефон, отсортировав по фамилии


SELECT Фамилия, Имя, Адрес, Телефон

FROM Сотрудники

ORDER BY Фамилия;


) Вывести все поля таблицы Сотрудники, произведя группировку по группам


SELECT *

FROM Сотрудники

GROUP BY Сотрудники аэропорта;


) Вывести всех студентов из таблицы Сотрудники, проживающих на улице Ленина


SELECT *

FROM Сотрудники

WHERE left([Адрес], 9)=ул.Ленина;


1. Установка «Microsoft SQL SERVER 2012»


Запустил файл установки «Microsoft SQL SERVER 2012».

Перешел в раздел Установка и выбрал Новая установка изолированного экземпляра SQL Server или добавление компонентов к существующей установке (Рис. 1.1).

Установщик проверил проблемы совместимости и не найдя их предложил продолжить установку (Рис. 1.2).

Выбрал «Выполнить новую установку SQL Server 2012» (Рис. 1.3).

Указал ключ установки продукта (Рис. 1.4)

Прочитал и принял условия лицензионного соглашения (Рис. 1.5)

Указал имя и идентификатор для SQL Server (Рис. 1.6)

Установщик проверил соблюдение правил для установки (Рис. 1.7)


Рис. 1.1


(Рис. 1.2)

Рис. 3


Рис. 1.4


Рис. 1.5


Рис. 1.6

Рис. 1.7


Установщик успешно завершил процесс установки.


. Создание файла данных и журнала транзакций


Запустил «Среда SQL Server Management Studio» через меню «Пуск».

В появившемся окне указал данные предоставленные на (Рис. 2.1)


(Рис. 2.1)


В появившемся окне разработки нажал ПКМ на каталоге «Базы данных» и в появившемся контекстном меню выбрал «Создать базу данных…» (Рис. 2.2)

В появившемся окне ввел данные показанные на Рис. 2.3.


(Рис. 2.2)


Рис. 2.3


. Создание и заполнение таблиц


При помощи клика ПКМ на каталоге «Таблицы», и выбора из контекстного меню пункта «Создать таблицу…» создал таблицы:

Валюта, в которую вошли такие элементы: Код валюты, Наименование, Обменный курс.

Результат создания показан на Рис. 3.1 и Рис. 3.2.


Рис. 3.1

Рис. 3.2


Вкладчики, в которую вошли такие элементы: ФИО вкладчика, Адрес, Телефон, Паспортные данные, Дата вклада, Дата возврата, Код вклада, Сумма вклада, Сумма возврата, Отметка о возврате вклада, Код сотрудника.

Результат создания показан на Рис. 3.3 и Рис. 3.4.


Рис. 3.3


Рис. 3.4


Сотрудники, в которую вошли такие элементы: Код сотрудника, ФИО, Возраст, Пол, Адрес, Телефон, Паспортные данные, Код должности. Результат создания показан на Рис. 3.5 и Рис. 3.6.


Рис. 3.5


Рис. 3.6


Должности, в которую вошли такие элементы: Код должности, Наименование должности, Оклад, Обязанности, Требования.

Результат создания показан на Рис. 3.7 и Рис. 3.8.


Рис. 3.7


Рис. 3.8

Вклады (Код вклада, Наименование вклада, Минимальный срок вклада, Минимальная сумма вклада, Код валюты, Процентная ставка, Дополнительные условия).

Результат создания показан на Рис. 3.9 и Рис 3.9.1.


Рис. 3.9


Рис. 3.9.1


. Создание запросов и фильтров


При помощи клика ПКМ по каталогу «Представления» и выбора из контекстного меню пункта «Создать представление…» и выбора из предложенных таблиц нужных мне таблиц создал дальнейшие запросы фильтры и нужные нам в дальнейшем процессе работы - отчеты.

Такие же операции по созданию запросов применил для создания Savers_Report и Staff_Report которые тоже понадобятся для создания отчетов.


Currency_Report (Нужен для создания отчетов)


Holding_Report (Нужен для создания отчетов)


Posts_Report (Нужен для создания отчетов)


Так же помимо предыдущих запросов создал запросы:


Вкладчики


Вклады


Отдел кадров


Помимо отчетов создал фильтры. Которые основываются на запросах, и которые у меня работают, так как показано на примере приведенном ниже

(Это фильтр Вкладчики с отдельными вкладами)


Так же я создал Фильтр для отображения сотрудников отдельных должностей


Фильтр Вклады отдельных валют


Фильтр Возвращенные и невозвращенные вклады


. Хранимые процедуры


Создал хранимую процедуру «Отображение сотрудников по ФИО»


USE [D:\BANK.MDF]

/****** Object: StoredProcedure [dbo].[Отображение сотрудников по ФИО] Script Date: 12.12.2013 22:13:04 ******/ANSI_NULLS ONQUOTED_IDENTIFIER ON

- =============================================

- Author:<Author,,Name>

- Create date: <Create Date,,>

- Description:<Description,,>

- =============================================PROCEDURE [dbo].[Отображение сотрудников по ФИО]

- Add the parameters for the stored procedure here

@FIO Varchar(50)=''

- SET NOCOUNT ON added to prevent extra result sets from

- interfering with SELECT statements.NOCOUNT ON;

- Insert statements for procedure here*

FROM dbo.Сотрудники ФИО=@FIO

Результат выполнения:



И основываясь на ней, создал «Отображение вкладчиков по ФИО»


6. Пользовательские функции


Создал скалярную функцию «Среднее трех чисел»


USE [D:\BANK.MDF]

/****** Object: UserDefinedFunction [dbo].[Функция среднее трех величин] Script Date: 12.12.2013 22:18:51 ******/ANSI_NULLS ONQUOTED_IDENTIFIER ON

- =============================================

- Author:<Author,,Name>

- Create date: <Create Date, ,>

- Description:<Description, ,>

- =============================================FUNCTION [dbo].[Функция среднее трех величин]

(

- Add the parameters for the function here

@Value1 int, @Value2 int, @Value3 int

)Real

- Declare the return variable here@Result Real

- Add the T-SQL statements to compute the return value here@Result=(@Value1+@Value2+@Value3)/3

- Return the result of the function

RETURN @Result


7. Диаграммы и триггеры


Создал диаграмму



Создал такие триггеры в каждой из таблиц:

Триггер добавления

[D:\BANK.MDF]

GO

/****** Object: Trigger [dbo].[Индикатор добавления] Script Date: 12.12.2013 22:27:33 ******/ANSI_NULLS ONQUOTED_IDENTIFIER ON

- =============================================

- Author:<Author,,Name>

- Create date: <Create Date,,>

- Description:<Description,,>

- =============================================TRIGGER [dbo].[Название триггера][dbo].[Имя таблицы]INSERT

- SET NOCOUNT ON added to prevent extra result sets from

- interfering with SELECT statements.NOCOUNT ON;

- Insert statements for trigger here'Запись добавлена'


Триггер удаления

[D:\BANK.MDF]

/****** Object: Trigger [dbo].[Индикатор добавления] Script Date: 12.12.2013 22:27:33 ******/ANSI_NULLS ONQUOTED_IDENTIFIER ON

- =============================================

- Author:<Author,,Name>

- Create date: <Create Date,,>

- Description:<Description,,>

- =============================================TRIGGER [dbo].[Название триггера][dbo].[Имя таблицы]DELETE

- SET NOCOUNT ON added to prevent extra result sets from

- interfering with SELECT statements.NOCOUNT ON;

- Insert statements for trigger here'Запись удалена'

И триггер изменения

USE [D:\BANK.MDF]

GO

/****** Object: Trigger [dbo].[Индикатор добавления] Script Date: 12.12.2013 22:27:33 ******/ANSI_NULLS ONQUOTED_IDENTIFIER ON

- =============================================

- Author:<Author,,Name>

- Create date: <Create Date,,>

- Description:<Description,,>

- =============================================TRIGGER [dbo].[Название триггера][dbo].[Имя таблицы]UPDATE

- SET NOCOUNT ON added to prevent extra result sets from

- interfering with SELECT statements.NOCOUNT ON;

- Insert statements for trigger here'Запись изменена'

END


8. Создание проекта. Подключение файла данных к проекту


Для создания проекта я зашел в Visual Studio 2012 на начальной странице выбрал Create project, в появившемся окне выбрал Приложение Windows Forms, изменил имя и расположение каталога проекта.

Для подключения файла данных к проекту выбирал Сервис ? Подключится к базе данных. После, в появившемся окне нажал Обзор и нашел файл базы данных в появившемся окне проводника Windows. После выбора файла проекта нажал Ок.


9. Главная кнопочная форма. Создание простых ленточных форм для работы с данными


Для создания простой кнопочной формы я зашел в



И в появившемся окне выбрал



И нажал кнопку «Добавить»

После добавления формы перетащил на нее при помощи мыши столбцы таблиц из вкладки «Источники данных»



10. Создание сложных ленточных форм для работы с данными


Сложные ленточные формы отличаются от простых ленточных форм только наличием кнопок и функционалом.

Код кнопок приведен ниже

Class SaversSub Имя таблицыBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles Имя таблицыBindingNavigatorSaveItem.Click.Validate(). Имя таблицыBindingSource.EndEdit().TableAdapterManager.UpdateAll(Me.BankDataSet)SubSub Savers_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "BankDataSet.Вкладчики". При необходимости она может быть перемещена или удалена.. Имя таблицыTableAdapter.Fill(Me.BankDataSet.Вкладчики)

End SubSub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Имя таблицыBindingSource.AddNew()


11. Создание табличных форм


Добавил в проект новую форму и на нее поместил следующие объекты:

üдве надписи ( Label ),

üпять кнопок ( Button ),

üвыпадающий список ( ComboBox ),

üтекстовое поле ввода ( TextBox ),

üгруппирующую рамку ( GroupBox ),

üсписок ( ListBox ),

üдва переключателя ( RadioButton ).


Расположил объекты на форме:



После обработки форма приобрела такой вид:



Код имеет такой вид:

Class Currency_TableSub ВалютаBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs).Validate().ВалютаBindingSource.EndEdit().TableAdapterManager.UpdateAll(Me.BankDataSet)SubSub Value_Table_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "BankDataSet.Валюта". При необходимости она может быть перемещена или удалена..ВалютаTableAdapter.Fill(Me.BankDataSet.Валюта)

End SubSub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs)_Sorting.Enabled = TrueSubSub Button_Sorting_Click(sender As Object, e As EventArgs) Handles Button_Sorting.ClickCol As System.Windows.Forms.DataGridViewColumnCase ListBox1.SelectedIndex0= DataGridViewTextBoxColumn11= DataGridViewTextBoxColumn22= DataGridViewTextBoxColumn3SelectRadioButton1.Checked Then

ВалютаDataGridView.Sort(Col, System.ComponentModel.ListSortDirection.Ascending)

ВалютаDataGridView.Sort(Col, System.ComponentModel.ListSortDirection.Descending)IfSubSub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

ВалютаBindingSource.Filter = "Наименование='" & ComboBox1.Text & "'"SubSub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

ВалютаBindingSource.Filter = ""SubSub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click.Close()SubSub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Clicki = 0 To ВалютаDataGridView.ColumnCount - 1j = 0 To ВалютаDataGridView.RowCount - 1

ВалютаDataGridView.Item(i, j).Style.BackColor = Color.White

ВалютаDataGridView.Item(i, j).Style.BackColor = Color.Blackjii = 0 To ВалютаDataGridView.ColumnCount - 1j = 0 To ВалютаDataGridView.RowCount - 1InStr(ВалютаDataGridView.Item(i, j).Value, TextBox1.Text) Then

ВалютаDataGridView.Item(i, j).Style.BackColor = Color.AliceBlue

ВалютаDataGridView.Item(i, j).Style.BackColor = Color.BlueIfji Sub

End Class


12. Отчёты


Отчеты создавал так:




Создал форму для отчета



И выбрал


После назначил кнопки на формах и вот результат



Содержание Вступление . Установка «Microsoft SQL SERVER 2012» . Создание файла данных и журнала транзакций . Создание и заполнение таб

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ