Remontnouta.ru

ПК Ремонт техники
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Работа с базой данных в C#

Работа с базой данных в C#

В данной статье мы подробно поговорим о разработке небольшого приложения с помощью Visual Studio базы данных и языка C#. Советуем поэтапно выполнять все инструкции из данной статьи и у Вас получиться разработать свое приложение.

1. Создание базы данных

В качестве СУБД выберем программу Microsoft Access. Но вы можете использовать и другую базу данных.

Создаем базу данных в Microsoft Access и называем её «test». В этой базе данных создаем таблицу «contacts»:

Работа с базой данных в C#

Заполните базу данных данными:

Работа с базой данных в C#

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

2. Создание проекта

В Visual Studio создаём проект:

Работа с базой данных в C#

После создания проекта добавляем на форму компонент «DataGridView» (компоненты находятся слева в “Панели элементов”). Открываем область «Задачи»:

Работа с базой данных в C#

Открываем список «Выберите источник данных» и нажимаем на ссылку «Добавить источник данных проекта»:

Работа с базой данных в C#

Откроется «Мастер настройки источника данных». В качестве источника выбираем «База данных» и идем далее:

Работа с базой данных в C#

В следующем окне идем далее:

Работа с базой данных в C#

В окне «Выбор подключения к базе данных» нажимаем на «Создать подключение»:

Работа с базой данных в C#

В окне «Выбора источника» выбираем «Другое» и поставщик данных ставим «Поставщик данных .NET Framework для OLE DB»:

Работа с базой данных в C#

В следующем окне «Добавить подключение» выбираем в «Поставщик OLE DB» Microsoft Office 16.0 Access Database. В «Имя сервера или файла» вписываем путь к нашему файлу базы данных Access (который создали в первом пункте). Проверяем подключение и жмем «ОК»:

Работа с базой данных в C#

Update 2021: Visual Studio 2019 требует файл Access старого формата (.mdb – это старый формат баз данных Access 2002-2003):

Работа с базой данных в C#

В следующем окне идем далее:

Работа с базой данных в C#

Выйдет окно для переноса файла базы данных в Ваш проект нажимаем «Да»:

Работа с базой данных в C#

В следующем окне ничего не меняем и идем далее:

Работа с базой данных в C#

В следующем окне выбираем нашу таблицу «contacts» и жмем «Готово»:

Работа с базой данных в C#

После всех манипуляций наша форма должна быть примерно такой:

Работа с базой данных в C#

Если запустить наш проект, то можно увидать данные из нашей базы данных:

Работа с базой данных в C#

Поменяйте ширину всех столбцов на «150» чтобы столбцы вместились во все окно:

Работа с базой данных в C#

Вот так без единой строчки кода мы вывели данные из нашей таблицы на нужную нам форму. Переходим к 3 пункту.

3. Сохранение данных

Базу данных мы видим, но редактировать её невозможно и именно поэтому нам нужна кнопка «Сохранить». Добавляем на форму кнопку и в свойствах меняем имя на «SaveButton». После добавления кнопки нажимаем на нее два раза и пишем код:

Вышеуказанный код обновляет запись в нашей таблице “contacts”. TableAdapter использует команды данных для чтения и записи в базу данных. В “testDataSet” хранятся настройки подключения базы данных.

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

4. Изменение заголовков столбцов таблицы

Изменим текст столбцов и скроем столбец «img»:

Работа с базой данных в C#

Полезные свойства для изменения столбцов:

  • HeaderText – задает название столбца.
  • Visible – скрывает заголовок или наоборот.
  • Width – ширина столбца.
  • Resizable – можно ли изменять ширину столбца.

После того как скроете заголовок «img» измените ширину всех остальных заголовков:

Работа с базой данных в C#

5. Защита от случайного удаления

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

Для этого перейдем к компоненту DataGridView, откроем список событий и установим обработчик для события UserDeletingRow. Нажмите два раза на пустую строчку возле события и перейдете к коду. Вписываем код:

Читайте так же:
Видеорегистратор шоу ми hd

После этого проверим работоспособность данного кода. Запустим приложение и попробуем удалить запись. Должно быть вот так:

Работа с базой данных в C#

Как только пользователь выделит строчку и нажмет кнопку “Delete” сработает наше событие “dataGridView1_UserDeletingRow” и выскочить окно с вопросом об удалении. Вот скриншот где находятся события выбранного компонента:

Работа с базой данных в C#

6. Добавление данных

Добавляем новую форму в проект и называем ее «AddForm»:

Работа с базой данных в C#

Работа с базой данных в C#

Изменяем заголовок формы и добавляем на форму компоненты:

  • 1 groupBox c текстом «Добавление записи»;
  • 4 TextBox и меняем свойство «Name» на (tbName, tbPhone, tbMail, tbPhoto);
  • 4 label и меняем текст на (Имя, Телефон, E-mail, Фото);
  • 1 Button и меняем свойство «Name» на «AddBtn» (Добавить);
  • 1 Button и меняем свойство «Name» на «CloseBtn» (Закрыть).

Работа с базой данных в C#

Переходим на главную форму и добавляем кнопку «Добавить» для добавления новой записи. Дважды щелкаем на нее и пишем код для вызова нашей новой формы:

Проверьте работоспособность приложения:

Работа с базой данных в C#

Возвращаемся на форму «Добавления записи». Пишем обработчик событий для кнопки «CloseBtn»:

Чтобы обработчик событий на кнопке «AddBtn» работал как надо нужно выполнить несколько действий. Зайти в «Form1.Designer.cs» и изменить модификаторы доступа на «public» нижеуказанных файлов:

  • System.Windows.Forms.DataGridView dataGridView1;
  • testDataSet testDataSet;
  • System.Windows.Forms.BindingSource contactsBindingSource;
  • testDataSetTableAdapters.contactsTableAdapter contactsTableAdapter;

Это нужно для того чтобы наша база данных была доступна для разных с ней манипуляций во всех создаваемых нами формах. Обработчик событий для кнопки «AddBtn»:

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

7. Поиск данных

Реализуем самый простой поиск. Данный поиск используется в небольших приложениях. Создаем новую форму с именем «SearchForm» и добавляем на форму компоненты:

  • 1 GroupBox (Поиск);
  • 1 label;
  • 2 button (Найти и Закрыть);
  • 1 TextBox и меняем в свойствах «Name» на «tbStr».

Работа с базой данных в C#

Переходим на главную форму и добавляем кнопку «Найти» для поиска записей. Дважды щелкаем на нее и пишем код для вызова нашей новой формы:

Проверяем работоспособность приложения:

Работа с базой данных в C#

Возвращаемся на форму «Поиска». Пишем обработчик событий для кнопки «Закрыть»:

Пишем обработчик событий для кнопки «Найти»:

На главную форму добавляем кнопку «Выход» и пишем для нее код:

Итоговая форма приложения:

Работа с базой данных в C#

Верхнее меню на нашей форме это компонент “MenuStrip”. На этом наша разработка приложения готова. Дальше попробуйте самостоятельно улучшить свое приложение.

Связь «Один к одному»

Один к одному — у каждой двух сущностей есть лишь один спутник и больше никто.

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


Проектирование БД:

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

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

MySQL Создать базу данных, таблицы, типы данных

Таблицы могут быть созданы с помощью оператора CREATE TABLE, и он фактически имеет следующий синтаксис.

ВОТ

  • «CREATE TABLE» — это тот, кто отвечает за создание таблицы в базе данных.
  • «[ЕСЛИ НЕ СУЩЕСТВУЕТ]» является необязательным и создает таблицу, только если не найдено подходящего имени таблицы.
  • «fieldName`» — это имя поля, а «Тип данных» определяет характер данных, которые будут храниться в поле.
  • «[необязательные параметры]» дополнительная информация о поле, такая как «AUTO_INCREMENT», NOT NULL и т. д.

Основные операции над БД, построенными на иерархической модели

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

  • поиск по базе данных того или иного элемента;
  • переход по базе данных — от дерева к дереву;
  • переход по дереву — от ветви к ветви;
  • соответственно, переход по ветвям — поэлементно;
  • работа с записями: вставка новой и/или удаление текущей, копирование, вырезание и т. д.

База Знаний: Функции Calc. Функции базы данных. Краткий обзор

В электронных таблицах InfraOffice.pro Calc, «база данных» — просто диапазон, представляющий собой список связанных данных, в котором строки являются записями, а столбцы — полями. База данных Calc не имеет никакого отношения к более сложной базе данных InfraOffice.pro Base. Функции базы данных в Calc весьма просты в использовании, и позволяют выполнять анализ исходных данных — но в них также встроена развитая фильтрация данных.

Первая строка таблицы «базы данных» содержит заголовки (Имя, Класс, Возраст . ), а каждая последующая строка содержит значения данных.

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

Все функции «базы данных» Calc имеют подобную форму. Как простой первый пример, используя таблицы приведённые выше:

=DCOUNT(A1:E10; 0; A13:E14)

Возвращается 5, количество детей, у которых «Расстояние до школы» больше чем 600.

A1:E10 — таблица базы данных, а A13:E14 — таблица критериев.

Имеются другие функции «базы данных», которые возвращают сумму, среднее число, стандартное отклонение и так далее.

Критерии

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

Все критерии в строке должны удовлетворяться для строки, который будет им удовлетворять, поэтому в данном примере выше мы находим строки, которые имеют:

  • «Расстояние до школы» больше чем 600 И 
  • «Возраст», больше чем 8 И 
  • «Возраст», меньше или равен 10.

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

В этом примере проверяется:

  • («Расстояние до школы» больше чем 600 И 
  • «Возраст», больше чем 8 И 
  • «Возраст», меньше или равен 10)
  • («Возраст», меньше или равен 8).

Другими словами мы ищем строки, в которых дети соответствуют или «в возрасте 9 и 10 лет, которым приходится проходить до школы больше 600» или «в возрасте 8 лет или менее».

Условие, которое вводится в ячейку таблицы критериев (т. е. >4) — просто текст и имеет следующую форму:

comparator value

  • comparator — одно из >, <, > =, <=, =, <> (если comparator опущен, принимается =);
  • value — значение (число или текст) для сравнения.
  • условие “> 4” проверяет, что содержимое ячеек больше чем 4;
  • условие “<lamp” проверяет, что содержимое ячеек находится в алфавитном порядке прежде, чем lamp (таким образом lady и ant соответствуют условию, но late и zebra, не соответствуют);
  • условие “lamp” проверяет, что содержимое ячеек — lamp.

Однако Calc имеет несколько параметров настройки, которые определяют точное поведение — пожалуйста прочитайте следующий раздел.

Параметры настройки для текстовых критериев

Этот флаг не имеет никакого влияния на функции баз данных Calc. Регистр игнорируется — таким образом, “lamp” всегда соответствует lamp, Lamp и LAMP и т. д.

 Условия поиска = и <> должны распространяться на всю ячейку 

Если этот флаг установлен, то “lamp” будет соответствовать ячейке, содержащей только lamp. Если этот флажок не установлен, то “lamp” будет соответствовать lamp, clamp, lampoon и т. д. — другими словами ячейка будет удовлетворять условию, если lamp будет найдена где-нибудь в тексте ячейки.

Если этот флаг установлен, то условие рассматривается как регулярное выражение. Например, условие “l?amp” соответствовала бы lamp и amp (в регулярных выражениях “l?” означает, что “l” является необязательным). Регулярные выражения подобны групповым символам, но более мощные; они описаны в разделе Регулярные выражения в функциях Calc. (Заметьте, что  Условия поиска = и <> должен распространяться на всю ячейку  устанавливающиеся выше также работают, когда выбраны регулярные выражения.)

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

Есть два способа бороться с этим:

  • Во-первых, можно разрабатывать электронную таблицу, чтобы работать независимо от параметров настройки. Наиболее легко, никогда не делать сравнение текста. Однако, при проведении сравнения необходимо всегда смотреть что в соответствие принимается вся ячейка, и удостовериться, что ни одна из ранее проверенных ячеек, не соответствует частично любой другой ячейке (например, если ищется “apple” как единственное содержимое ячейки, удостовериться, что никакая другая ячейка не может содержать “crabapple”). Не использовать регулярные выражения. Не использовать специальные символы регулярных выражений, таких как.  *  +  [   <  в критериях.

Теперь заметьте, что:

COUNTIF(A3;“.*”) — возвращает 1, если регулярные выражения включены.

COUNTIF(A3;“<>e”) — возвращает 1, если распространение на всю ячейку включено.

Для проверки и регулярных выражений и соответствия всей ячейки:

=IF(AND(COUNTIF(A3; “.*”); COUNTIF(A3; “<>e”)); “OK”; “Error: ” & IF(COUNTIF(A3;“.*”)=0; “Включите регулярные выражения. ”; “”) & IF(COUNTIF(A3;“<>e”)=0; “Включите соответствие всей ячейке.”; “”))

Для проверки регулярных выражений, но без соответствия всей ячейки:

=IF(AND(COUNTIF(A3;“.*”); COUNTIF(A3;“<>e”)=0); “OK”; “Error: ” & IF(COUNTIF(A3;“.*”)=0; “Включите регулярные выражения. ”; “”) & IF(COUNTIF(A3;“<>e”); “Выключите соответствие всей ячейке.”; “”))

Для проверки соответствия всей ячейки, но без регулярных выражений:

=IF(AND(COUNTIF(A3;“.*”)=0; COUNTIF(A3;“<>e”)); “OK”; “Error: ” & IF(COUNTIF(A3;“.*”); “Выключите регулярные выражения.”; “”) & IF(COUNTIF(A3;“<>e”)=0; “Включите соответствие всей ячейке .”; “”))

Для проверки что отключены регулярные выражения и соответствие всей ячейки:

=IF(AND(COUNTIF(A3;“.*”)=0; COUNTIF(A3;“<>e”)=0); “OK”; “Error: ” & IF(COUNTIF(A3;“.*”); “Выключите регулярные выражения. ”; “”) & IF(COUNTIF(A3;“<>e”); “Выключите соответствие всей ячейке.”; “”))

Регулярные выражения в функциях Calc

Есть множество функций в Calc, которые позволяют использовать регулярные выражения:

SUMIF, COUNTIF, MATCH, SEARCH, LOOKUP, HLOOKUP, VLOOKUP, DCOUNT, DCOUNTA, DSUM, DPRODUCT, DMAX, DMIN, DAVERAGE, DSTDEV, DSTDEVP, DVAR, DVARP, DGET.

Действительно ли используются регулярные выражения, выбирается в диалоговом окне Сервис  → Параметры  → InfraOffice.pro Calc  → Вычисления .

Например =COUNTIF (A1:A6; “r.d”), с установленным флагом  Разрешить регулярные выражения в формулах  , будет подсчитывать ячейки в диапазоне A1:A6, которые содержат “red” и “ROD”.

Поиск с использованием регулярных выражений в пределах функций — всегда не зависит от регистра, независимо от установки флагка  Учитывать регистр  в вышеуказанном диалоговом окне — поэтому “red” и “ROD” всегда будут учитываться в вышеупомянутом примере. Эта независимость от регистра также относится к структурам регулярных выражений ([:lower:]) и ([:upper:]), которые соответствуют символам независимо от регистра.

Регулярные выражения не будут работать для простых сравнений. Например: A1 = “r.d” будет всегда возвращаться FALSE, если A1 будет содержать “red”, даже если регулярные выражения будут разрешены — оно возвратит TRUE, только если A1 будет содержать “r.d” (“r”, потом точка, потом “d”). Если необходимо проверить использование регулярных выражений, пробуйте функцию COUNTIFCOUNTIF(A1; “r.d”) , возвратится ‘1’ или ‘0’, интерпретируемые как TRUE или FALSE в формулах подобных=IF (COUNTIF (A1; “r.d”); “ура”; “фу”).

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

Отметьте, что в Apache OpenOffice 2.4 изменение параметра  Разрешить регулярные выражения в формулах  , не обязательно отражается на результатах, даже если выполнен перерасчёт. Эта ошибка 89047 не относится к Apache OpenOffice 2.3, и устранена в Apache OpenOffice 3.0.

Что Такое База Данных в WordPress: Всё, Что Вам Нужно Знать

Что Такое База Данных в WordPress: Всё, Что Вам Нужно Знать

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

Почему WordPress нужна база данных

Давайте сначала разберёмся, что такое база данных. Как кратко говорилось ранее, база данных может быть жизненно важным вариантом для нас, чтобы хранить и извлекать ценные данные.

База данных это структурированный набор организованных данных. В области ИТ под системами управления базами данных (СУБД) понимается программное обеспечение, которое взаимодействует с пользователем, обрабатывает данные, а также извлекает и хранит данные. Это почти то же самое, когда вы сохраняете изображения или видео на жёстком диске вашего компьютера или в папке для визитных карточек, если вы предпочитаете управление старой школы. Наличие личной базы данных для доступа к этим данным очень полезно.

Есть несколько способов использования и доступа к базе данных. WordPress использует MySQL для своей системы управления базами данных. MySQL — это программное обеспечение с открытым исходным кодом, и оно отвечает за управление такими компонентами базы данных WordPress, как пользовательские данные, пользовательские мета, публикации, комментарии и так далее. Мы обсудим это чуть позже.

WordPress использует PHP, используя SQL-запрос в разметке PHP, в качестве языка инструкций для CRUD (Create, Read, Update, and Delete — создай, прочти, обнови и удали) данных из базы данных MySQL. База данных является неотъемлемой частью WordPress. Это основа, которая хранит всю основную информацию. База данных также обеспечивает бесперебойную работу вашей страницы, полностью оптимизирует её и помогает регулярно выполнять резервное копирование данных.

Следующий вопрос, где хранится база данных?

Что такое хост базы данных?

Ваша база данных WordPress размещается на хосте базы данных, который затем помещает её на сервер MySQL. Думайте о хосте базы данных как о реальном доме, который вы можете найти зная определённый адрес (имя хоста). Вы можете получить что-то из раздела «комнаты» (имя базы данных). Конечно, вам понадобится разрешение на это, поэтому вам нужно ввести имя пользователя и пароль перед входом в дом.

По большей части вы можете использовать localhost для управления и подключения WordPress к вашей базе данных. Однако вы также можете управлять сервером MySQL, если ваш веб-хостинг использует другое имя хоста. Например, в Hostinger вы можете получить доступ к своей базе данных MySQL в разделе База данных с панели управления.

Раздел базы данных MySQL на панели инструментов Hostinger

Что такое таблица базы данных?

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

  1. wp commentmeta — каждый комментарий имеет уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  2. wp comments — все комментарии в WordPress будут доступны в этой таблице.
  3. wp links — этот раздел содержит информацию, относящуюся к ссылкам, введённым в функцию Links в WordPress.
  4. wp options — этот раздел содержит данные, которые WordPress использует для хранения различных настроек и параметров конфигурации.
  5. wp postmeta — каждый пост содержит уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  6. wp posts — в WordPress «posts» — это статьи, которые вы пишете для заполнения своего блога. Этот раздел будет хранить эти данные. Страницы и пункты меню навигации также хранятся здесь.
  7. wp termmeta — каждый термин имеет уникальную информацию, называемую метаданными, эти данные будут доступны в этом разделе.
  8. wp terms — здесь хранятся категории для сообщений и ссылок, а также теги для сообщений.
  9. wp term relationships — сообщения связаны с категориями и тегами из таблицы wp_terms, и эта связь поддерживается здесь.
  10. wp term taxonomy — в этой таблице описывается таксономия (категория, ссылка или тег) для записей в таблице wp_terms.
  11. wp usermeta — у каждого пользователя есть уникальная информация, называемая метаданными, эти данные будут доступны в этом разделе.
  12. wp users — здесь поддерживается список пользователей.

По умолчанию вы не можете удалить основные таблицы WordPress. Но они добавятся к вашему контенту. Узнать больше о таблицах можно тут.

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

Если вы собираетесь начать что-то новое, получите наш специальный купон на скидку и выходите в интернет прямо сейчас!

Определение отношений между таблицами

Первое правило сводных таблиц: отношения между таблицами определяются в системе отчетов сводной таблицы, с использованием инструмента Отношения. Не пытайтесь с самого начала определить связи между таблицами – инструмент формирования отчетов сводных таблиц все равно их не воспримет.

Выделяем таблицу с продажами, во вкладке Вставка переходим в группу Таблицы, щелкаем Сводная таблица.

92-5-база данных excel

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

92-6-база данных excel

Excel создаст новый лист с пустой сводной таблицей. В левой части экрана появится панель Поля сводной таблицы. Чтобы свести данные обоих таблиц, в панели Поля сводной таблицы вкладки Активная проставьте галочки напротив пунктов Квартал 1, Квартал 2, Квартал 3 и Квартал 4. Excel построит сводную таблицу с данными по кварталам, пока не обращайте на нее внимание. Далее в этой же панели переходим на вкладку Все, где вы увидите обе наши таблицы. Ставим галочку напротив поля Город, таблицы Основной. Появится желтое поле с уведомлением Могут потребоваться связи между таблицами, щелкаем кнопку Создать.

В появившемся диалоговом окне Создание связи необходимо определить отношения между таблицами. Выберите из выпадающего списка Таблица пункт Продажи, а из выпадающего списка Столбец (Чужой) пункт ID Продаж. Помните, что ID Продаж единственное поле, которое находится в обоих таблицах. Из списка Связанная таблица выбираем Основной, из списка Связанный столбец (первичный ключ) — пункт ID Продаж. Жмем ОК.

92-11-база данных excel

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

92-12-база данных excel

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector