Форум программистов, компьютерный форум, киберфорум
Наши страницы

MS Access

Войти
Регистрация
Восстановить пароль
Результаты опроса: Есть необходимость создавать свои статьи
согласен (согласна) 6 100.00%
не согласен (не согласна) 0 0%
мне все равно 0 0%
Голосовавшие: 6. Вы ещё не голосовали в этом опросе

 
 
Рейтинг: Рейтинг темы: голосов - 4, средняя оценка - 5.00
all_angarsk
749 / 256 / 44
Регистрация: 13.12.2009
Сообщений: 975
11.02.2011, 16:45 #16
если получится, все ограничено временем!!!!!!!
начало можно посмотреть
HTML5
1
http://www.cyberforum.ru/php-database/thread239338.html
только не много читателей
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2011, 16:45
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Написание статей (MS Access):

Написание формул - MS Access
Здравствуйте, подскажите пожалуста где можно прочитать как составлять формулы в access как составлять запросы .Желательно на человеческом...

Написание формулы - MS Access
Как правильно записать формулу подсчета накрутки на товар. есть таблица Поставка в ней поле ЦенаПоставки. Необходимо чтобы в Таблице Товары...

Написание триггеров к БД - MS Access
Доброго времени суток! Необходима помощь в написании триггеров на SQL к БД реализованной в Access Смотрел, смотрел инфу по триггерам, но...

Написание SQL запросов - MS Access
привет всем! нужна помощь в написании нескольких запросов. извините, просто я над ними уже бьюсь очень много времени. если вас не...

Написание сложного запроса SQL - MS Access
Задача такая: Оператор телефонной связи берет абонентскую плату 300р. и абонент может разговаривать 300 минут , но если абонент говорил...

Написание запроса к нескольким таблицам - MS Access
Еще раз здравствуйте! Необходимо написать запрос который возвращает мне ФИО заказчика,Дату приема и дату сдачи заказа, Предоставленные...

27
simply_sash
8 / 8 / 0
Регистрация: 23.08.2011
Сообщений: 14
23.08.2011, 15:23 #17
Статьи по MS Access пишу у себя в блоге. Если что-нибудь из моего творчества войдет в учебный материал -- буду только рад.
Могу порекомендовать статью о "резиновом" пользовательском интерфейсе -- при изменении размеров формы соответственно изменяются размеры и координаты элементов управления, расположенных в этой форме: http://csdeveloper.ru/izmenenie-razm...cess-2003.html
4
magirus
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
27746 / 15653 / 945
Регистрация: 15.09.2009
Сообщений: 67,839
Записей в блоге: 78
04.12.2011, 09:51 #18
simply_sash, будут все благодарны, если Вы будете цитировать статьи здесь, хотя бы конкретные решения по задаваемым вопросам.
0
AlexSyr
62 / 15 / 1
Регистрация: 14.12.2010
Сообщений: 15
10.01.2012, 06:20 #19
Делал для себя когда-то "шпаргалку" по теме "Новый интерфейс MS Access 2007, 2010".
Может кому и пригодится.
Примечание:
- Работоспособность всех представленных примеров проверена в MS Access 2010 (32-бит);
- Ссылки, примеры запускаются напрямую из docx файла.
5
Вложения
Тип файла: rar Новый интерфейс MS Access 2007, 2010.rar (8.44 Мб, 858 просмотров)
Ameli
2057 / 1133 / 38
Регистрация: 05.11.2009
Сообщений: 1,604
01.02.2012, 08:12 #20
Хорошая база данных не получается случайно, ее структура должна тщательно прорабатываться. Плохо спроектированная база данных может стать накопителем избыточной информации, дублирования данных, источником множества ошибок, приводящим к неверным решениям.
Дублирование данных - главный враг правильной структуры базы данных, оно приводит к ненужной дополнительной работе и ошибкам при работе с бд. С таким же успехом все данные с повторами можно было бы хранить в одной таблице Excel-а. Вы же решили создать базу данных, поэтому разработка правильной ее структуры очень важна.
Основные понятия
База данных (бд) – упорядоченная совокупность данных, относящихся к определенной предметной области
Система управления базами данных (СУБД) - комплекс программных и языковых средств для создания и обработки баз данных
Реляционная модель данных:
•Данные в базе данных представляют собой набор отношений (relations), отсюда и название;
•Отношения (таблицы) отвечают определенным условиям целостности;
•Поддержка операторов манипулирования отношениями (реляционная алгебра, реляционное исчисление)
Кроме того в состав реляционной модели включают теорию нормализации.
Ms Access относится к реляционным СУБД.
Класс объектов (сущность) – совокупность объектов, обладающих одинаковым набором свойств.
Например, в базе данных о ВУЗе сущностями являются студенты, преподаватели, предметы.
Атрибут (свойство) – определенная часть информации о некотором объекте. Атрибуты – это поля (столбцы) таблиц. Например, для объекта Студент атрибутами будут Фамилия, Имя, Отчество.
Ключевой атрибут - это одно или несколько полей, комбинация значений которых однозначно определяет каждую запись в таблице
Связь (отношение) – способ, которым связана информация о разных объектах. Есть три типа отношений между таблицами:
•«один-к-одному» (1:1) – каждой записи в одной таблице соответствует одна запись в другой таблице. Встречается довольно редко, в основном, когда часть информации об объекте редко используется.
•«один-ко-многим» (1:М) – каждой записи в одной таблице соответствует несколько записей в связанной таблице. Наиболее распространенный тип связей.
Например, в бд должна храниться информация о студентах и результатах сдачи ими экзаменов (дата сдачи, предмет, оценка). Если все это хранить в одной таблице, то информация о студенте будет дублироваться по каждой сдаче им экзамена, поэтому объем таблицы неоправданно возрастет. Решение: создание двух таблиц Студенты и Экзамены. Для связи в таблице Экзамены можно использовать только часть информации о студенте, сдающем экзамен. Но она должна однозначно определять каждого студента, например, это может быть номер зачетки.
Итак, таблица Студенты должна иметь ключевое поле Номер зачетки, таблица Экзамены будет содержать следующие поля: Номер зачетки, предмет, дата, оценка, и будет связана с таблицей Студенты по полю Номер зачетки связью «один-ко-многим».
При этом поле Номер зачетки таблицы Студенты является первичным ключом, а таблицы Экзамены - внешним ключом (т.е. ссылкой на первичный ключ другой таблицы).
•«многие-ко-многим» (М:М) – множеству записей одной таблицы соответствуют множество записей в связанной таблице.
Эта связь не соответствует понятию нормальности таблиц и должна быть устранена путем замены двумя связями «один-ко-многим». Реализуется это с помощью введения третей дополнительной таблицы.
Например, Студенты изучают несколько Предметов - связь «многие-ко-многим». Для приведения к правильной структуре надо ввести дополнительную таблицу Изучение предметов, которая будет содержать ключевые поля обеих таблиц и будет связана с каждой из них связью «один-ко-многим».

Модель "сущность-связь" (ER-модель)
(англ. entity-relationship model, ERM) – концептуальная модель бд, которая отражает наиболее важные объекты предметной области и связи между ними. Моделирование основано на использовании графических диаграмм - ER-диаграмм (Entity-Relationship Diagrams), в результате получается наглядная концептуальная схема базы данных, понятная всем.
Основные этапы создания ER-диаграммы:
•Определение сущностей
•Определение связей
•Определение атрибутов
•Определение атрибутов, являющихся первичными ключами
•Создание диаграммы "сущность-связь"
На диаграмме сущность изображается в виде прямоугольника, содержащего его имя, выражаемое существительным. Связь изображается линией, которая связывает две сущности, участвующие в отношении. Тип связи обычно обозначают так: возле сущности со стороны «один» ставят 1, возле сущности со стороны «многие» - М или N, однако встречаются и другие обозначения, например, вилка (разветвление) возле сущности со стороны «многие». Необязательность связи обычно помечается незакрашенным кружочком на конце связи, иногда пунктирной линией. Название связи выражается глаголом в изъявительном наклонении настоящего времени «Имеет», «Принадлежит» т.д.; или глаголом с поясняющими словами: «Включает в себя» и т.д. и заключается в ромб. Атрибуты сущности иногда заключают в овалы и помещают на диаграмму возле каждой сущности, иногда помещают в прямоугольник сущности, иногда вообще не обозначают на диаграмме. Среди атрибутов выделяют ключевой.
В приложении примеры ER-диаграмм.
Пример 1: названия связей обозначены ромбами, типы связей - 1:N, атрибуты не обозначены
Пример 2: тип связи со стороны «многие» обозначен вилкой, атрибуты по каждой сущности внесены в прямоугольник, атрибуты, по которым осуществляется связь, подчеркнуты.
Пример 3: основные атрибуты обозначены в овалах, типы связей 1:N

Теория нормализации
Нормальная форма – совокупность требований, которым должно удовлетворять отношение в реляционной модели данных, чтобы избежать избыточности, которая может привести к логически ошибочным результатам выборки или изменения данных.
Проще говоря, это правила, которые позволяют сделать структуру бд эффективной и избежать трудностей в работе с ней в дальнейшем.
Процесс преобразования отношений бд к виду, отвечающему нормальным формам, называется нормализацией.
Т.е. это процесс усовершенствования структуры в соответствии с правилами нормализации - устранение избыточности и несогласованности данных, что сделает структуру бд более эффективной и надежной.
Существует 6 нормальных форм, т.е. 6 стадий совершенствования, однако на практике разработчики обычно пользуются первыми тремя.
Первая нормальная форма (1НФ):
•Все строки различны
•Все элементы внутри атомарны (неделимы), т.е. не списки
Пример таблицы Преподаватели, не находящейся в 1НФ:
ПреподавательПредмет
ИвановМат анализ, Векторный анализ
ПетровОбщий курс физики
В этой таблице в одной из ячеек содержится список из двух элементов: Мат анализ, Векторный анализ, т.е. не является атомарным. Исправить можно разбиением на две таблицы: Преподаватели и Чтение лекций преподавателями, связанных между собой связью «один-ко-многим»:
Код преподавателяФамилия преподавателя
1Иванов
2Петров
ПреподавательПредмет
1Мат анализ
1Векторный анализ
2Общий курс физики
Эти таблицы находятся в первой нормальной форме. Во второй таблице поле Преподаватель – числовой код таблицы Преподаватели.
Методы приведения к 1НФ:
•Устраните одинаковые строки в таблицах
•Создайте отдельную таблицу для каждого набора данных
•Идентифицируйте каждый набор связанных данных с помощью первичного ключа
Вторая нормальная форма (2НФ):
•отношение находится в 1НФ
•каждый неключевой атрибут функционально полно зависит от первичного ключа.
Второе правило можно понять на примере, когда первичный ключ состоит из нескольких полей. Т.е. каждую строку можно идентифицировать с помощью набора данных. Например, эта таблица находится в 1НФ, но не во 2НФ:
КурсПредметКол-о часовСтудент
1Мат анализ100Иванов
1Векторный анализ50Иванов
2Мат анализ120Петров
В этой таблице первичный ключ составляют два поля: курс и предмет, Кол-о часов функционально полно зависит от них обоих, т.к. определяется одновременно и курсом, и предметом. А вот студент зависит только от курса и не зависит от предмета, т.е. он функционально не полно зависит от всего ключа и функционально полно от его части. Исправляется разделением на две таблицы + введение третей Предметы:
КурсСтудент
1Иванов
2Петров
КодПредметаПредмет
1мат анализ
2векторный анализ
КурсПредметКол-о часов
11100
1250
21120
Теперь эти таблицы во 2НФ.
Методы приведения ко 2НФ:
•Создайте отдельные таблицы для наборов значений, относящихся к нескольким записям (что мы и сделали)
•Свяжите эти таблицы с помощью внешнего ключа (в нашем случае это поле Курс)
Третья нормальная форма (3НФ):
•Отношение находится во 2НФ
•Неключевые атрибуты не зависят между собой
Таблица Студенты находится во 2НФ, но не в 3НФ:
Номер зачеткиФамилияГруппаКуратор
1Иванов1Куратор1
2Петров1Куратор1
3Сидоров2Куратор2
Куратор зависит от студента, но он также зависит от группы (неключевого поля). Наличие этого поля в этой таблице приводит к дублированию куратора по каждому студенту одной группы, поэтому необходимо выделить таблицу Группы:
ГруппаКуратор
1Куратор1
2Куратор2
Номер зачеткиФамилияГруппа
1Иванов1
2Петров1
3Сидоров2
Метод приведения к 3НФ:
•Удалить поля, зависящие от неключевых элементов, выделить их в отдельную таблицу, связать с помощью внешнего ключа (Группа в нашем случае).
Нормальная форма Бойса-Кодда (НФБК):
•Отношение находится в 3НФ
•Первичный ключ не зависит от неключевых элементов
Например, таблица Экзамены находится в 3НФ, но не в НФБК:
Номер зачеткиНомер паспортаПредметОценка
1СВ1019Информатика5
2СВ1020Математика5
3СВ1056Физика4
Если ключевым сделать Номер зачетки, то все остальные поля будут зависеть только от него, но Номер зачетки соответствует Номеру паспорта, и наоборот. Решается введением еще одной таблицы Студенты:
Номер зачеткиНомер паспорта
1СВ1019
2СВ1020
3СВ1056
Номер зачеткиПредметОценка
1Информатика5
2Математика5
3Физика4
И использованием одного из них в качестве ключевого, а в таблице Экзамены - в качестве связующего с таблицей Студенты.
Четвертая нормальная форма (4НФ):
•Отношение находится в НФБК
•В нем отсутствуют многозначные зависимости
Например, таблица Преподаватель (Фамилия, Предмет, Учебное пособие), хранящая сведенья о предметах, читаемых преподавателем, и написанных им пособиях. Здесь видно значительную избыточность, и если понадобится добавить Иванову еще и предмет Теория удара, то придется добавлять еще и пособие, написанное им по этому предмету, которого может и не быть в природе. Тем не менее, таблица находится в НФБК (ключевое поле Фамилия).
ФамилияПредметУчебное пособие
ИвановТеория упругостиУчебное пособие1
ИвановТеория упругостиУчебное пособие2
ИвановТеория колебанийУчебное пособие3
ПетровТеория колебанийУчебное пособие4
Решается разбиением на две таблицы: Предметы по преподавателям, Учебные пособия по преподавателям:
ФамилияПредмет
ИвановТеория упругости
ИвановТеория колебаний
ПетровТеория колебаний
ФамилияУчебное пособие
ИвановУчебное пособие1
ИвановУчебное пособие2
ИвановУчебное пособие3
ПетровУчебное пособие4
Пятая нормальная форма (5НФ):
Отношение находится в 5НФ тогда и только тогда, когда любая зависимость по соединению в нем определяется только его возможными ключами.
Другими словами, каждая проекция такого отношения содержит не менее одного возможного ключа и не менее одного неключевого атрибута.

Основные этапы проектирования базы данных
1.Определить цель создания бд: задачи, способы использования, пользователи. Какие функции должна выполнять бд, на какие вопросы должна давать ответы, какие выходные данные вы хотите получить в итоге.
2.Собрать все данные, которые будут храниться в бд: запишите все, что должно храниться в бд
3.Распределить данные по таблицам: каждой группе данных – своя таблица. Например, для ВУЗа: Студенты, Предметы, Преподаватели, Экзамены и т.д.
Проанализируйте данные, встречаются ли повторы? Например, часто ли повторяются должности преподавателей? Найдите такие повторы и создайте для них отдельную таблицу.
4.Распределить элементы данных по столбцам: определить какие данные должны быть в каждой таблице, каждый элемент данных – столбец таблицы. Например, для таблицы Студенты это могут быть Номер зачетки, Фамилия, Имя, Отчество, Дата рождения и т.д. Здесь есть два основных правила:
-Не включайте вычисляемые данные в таблицу: их всегда можно получить в запросах, формах и отчетах, а в таблицах эта информация избыточна, кроме того может быть устаревшей.
-Разбивайте информацию на минимальные логические компоненты для удобства их дальнейшего извлечения. Например, ФИО лучше разбить на три поля.
Советы по именам полей:
-Давайте понятные, не слишком длинные имена полям
-Если имя поля состоит из нескольких слов, не разделяйте их пробелами. Это затрудняет обращение к ним в программном коде VBA или в выражениях (формулах). Соедините слова и начинайте каждое слово с большой буквы: НомерГруппы, или разделите их символом подчеркивания: Номер_группы.
Тоже относится и к именам таблиц.
На этом этапе также нужно определить типы данных полей, они позволяют позволяют обеспечить точность вводимых данных, а также повзоляют экономить дисковое пространство, поскольку определяют размеры полей.
5.Определить ключевые поля таблиц, т.е. ненулевые поля, однозначно определяющие каждую запись таблицы. Самый простой и надежный способ – введение поля-счетчика, который автоматически ставит номер записи. Кроме того счетчики удобно использовать для сортировки по мере ввода информации в таблицу, поэтому я советую всегда их использовать.
6.Создать связи между таблицами: вы разбили данные по таблицам, теперь необходимо выбрать способ, которым Access будет вновь объединять сведения таблиц.
Проанализируйте таблицы и определите, как данные одной таблицы связаны с данными другой таблицы. Возможно, будет необходимо добавить дополнительные поля или даже таблицы для создания необходимых связей.
Связи устанавливаются между первичным ключом одной таблицы и внешним ключом другой таблицы (т.е. ссылкой на первичный ключ первой таблицы). Значения в связанных полях при этом совпадают.
Как уже говорилось выше, используйте связи "один-ко-многим", если у вас получаются связи других типов, скорей всего структуру надо пересмотреть: "один-к-одному" - объединить в одну таблицу, "многие-ко-многим" - ввести дополнительную таблицу. Их использование целесообразно лишь в редких случаях.
В Microsoft Access обеспечивается возможность автоматической проверки целостности данных в связанных полях. Целостность даных означает систему правил, используемых для поддержания связей между записями в связанных таблицах, а также для обеспечения защиты от случайного удаления или изменения связанных данных. Установить проверку целостности можно, если:
-поле одной из таблиц является ключевым или имеет уникальный индекс
-связанные поля имеют один тип данных. Или одно из них счетчик, а второе числовое с Размером поля - Длинное целое.
Чтобы целостность обеспечивалась для определенной связи, при ее создании нужно установить флажок Обеспечение целостности данных.
7.Усовершенствовать структуру: проверьте структуру на наличие ошибок, заполните таблицы образцами данных, проанализируйте полученные результаты, примените правила нормализации, чтобы проверить правильность структуры. Внесите в таблицы все необходимые изменения.
Приведенные ниже вопросы помогут структурировать данные.
•Действительно ли в каждом поле хранится элементарная единица данных?
•Уникальна ли каждая запись, или они иногда повторяются?
•Не повторяются ли какие-то данные или группы данных в нескольких записях или таблицах?
•Можно ли легко изменить одну запись, не изменяя при этом другую?
•Действительно ли каждая из записей содержит все относящиеся к ней сведения?
•Действительно ли каждая из записей содержит только те сведения, которые относятся исключительно с ней?
•Есть ли поля, которые зависят от других полей в таблице?


Пример проектирования базы данных

Обсуждение статьи здесь
31
Миниатюры
Написание статей   Написание статей   Написание статей  

Сергей1980
479 / 312 / 10
Регистрация: 17.12.2009
Сообщений: 742
05.03.2012, 10:50 #21
Совместная работа MS Access и сервера MySQL
Уважаемые коллеги, любители, профессионалы, айтишники, бухгалтеры, логисты, здравствуйте!
Возникла идея написать полезную статью, как организовать совместную работу бесплатного сервера MySQL и программного продукта MS Access (2003,2007,2010).
У каждого человека в данной ветке, пользующегося аксессом в рабочих целях рано или поздно возникала мысль сделать работу программы пошустрей (особенно если использовалась обычная разделенная база данных , где таблицы просто лежали в какой либо папке и пользователь через оболочку аксесса/клиентской частью подключался к этим таблицам, которые все больше и больше тормозили из-за увеличивающегося количества информации и увеличивающегося количества пользователей).
Хоть и обещают разработчики аксесса, что могут единовременно трудится в ней порядка 255 человек, но все это спорно. При моих таблицах нормальные тормоза уже возникали при 16-18 людях, которые одновременно использовали проект. Количество полей в некоторых таблах достигало порядка 100 штук.
Причем проект был неплохо нормализован и логические связи в схеме данных были прописаны правильно.
Решил избавиться от тормозов и поискать удобные решения работы через сервер. Расставаться с удобным и дружелюбным интерфейсом аксесса не хотелось и поэтому в качестве клиентской части оставил его.
В качестве сервера перепробовал следующие варианты:
1) ORACLE
2)SQL LITE
3) MS SQL SERVER 2008
4) MYSQL
Все эти сервера были поставлены и опробованы мной на локальной машине(обычном ноутбуке).
Остановился на последнем варианте, а именно mysql server.
Что понравилось:
1) самая большая скорость работы, по сравнению с остальными вариантами. (те, кто скажет что в мускуле нет транзакций, можно отхлестать по заднице до покраснения)) В версии 5 все есть)
2) Легкость в установке и настройке.
3) Возможность писать помимо аксесовского варианта еще и вэб интерфейс (то есть использовать БД как источник данных для сайта)
4) Хорошая отказоустойчивость.
5) Совместимость языка MySQL и обычного аксесовского JET SQL.
6) Легкий и интуитивно понятный интерфейс администратора сервера MYSQL.
7) Возможность обычной линковки таблиц через MyODBC driver (в случае если база используется на одном компе или в одной корпоративной сети с настроенным общим доступом к источнику данных. В остальных случаях доступ логичней организовать через connection string c точечными запросами к серверу. Мне вообще больше нравится второй вариант, ибо ...ибо нравится)))

ГЛАВА 1. - Установка и настройка MySQL server на домашний комп.
Итак, желание есть, возможности есть, места известны, устанавливаем собственно на комп MySQL server и MyODBC driver.
1) Где найти MySQL . Предлагаю вам сразу поставить готовую сборку MySQL+PHP+HTML+APACHE от энтузиастов сайтостроения. Скачать эту сборку можно
ЗДЕСЬ
Заходите на сайт. Видите большую оранжевую кнопку?? Вот вот, ее и можно нажимать и заливать сервак к себе на комп.
После скачивания дистрибутива, устанавливаете все это к себе на компьютер ("при установке следуйте за зеленым кроликом (С)"-Там все написано таким языком, что даже самый последний даун поставит мускул и апачи к себе на комп. Но не забудьте в конце установки сказать, чтобы иконки на рабочем столе появились.)
После того, как вы все поставили у вас на рабочем столе появились три иконки в виде перышка. START,RESTART,STOP То есть соответственноЗАПУСТИТЬ МУСКУЛ И АПАЧ, ПЕРЕЗАПУСТИТЬ МУСКУЛ И АПАЧ, ЗАВЕРШИТЬ РАБОТУ С МУСКУЛОМ И АПАЧ
Вот такие:
Название: 111.jpg
Просмотров: 11493

Размер: 6.4 Кб
Нажмите иконку перезапустить Денвер.
После перезапуска в нижнем правом углу монитора появится значок перышка и шляпы. Это значит ,что апач и мускул заработал.
Вот такое увидите :
Название: 222.jpg
Просмотров: 12334

Размер: 3.7 Кб
Все отлично, заработало,ура. Возник вопрос, как нам теперь попасть на сервак?
Очень просто, открываете в интернет браузере следующий адрес http://localhost/PhpMyAdmin/
Появится подобная картинка:
Написание статей
По умолчанию денвер никак не паролит сервер и дает свободный доступ к нему любого желающего на локальной машине. Вбиваете логин ROOT и нажимаете Ok Никакой пароль не забиваете. Все , процесс доступа свершился.
Появляется примерно такая картинка:
Написание статей
Видите обведенный поле красным? Это поле ждет, когда вы туда забьете имя своей базы данных, которую будете переносить потом с аксесса на MySQL.
Вводите любое имя на английском и нажимайте Ок.
Все, база данных создана и готова к импорту таблиц с аксесса.


ГЛАВА 2. Перенос таблиц и запросов с аксесса на мускул. Линковка MS access и таблиц мускула через MyODBC driver
Что мы хотим сделать в этой главе? Мы хотим подружить аксесс и MySQL , чтобы мускул крутил наши таблы а аксесс выполнял функции погонщика и смотрителя за педалями этого велосипеда.
Создайте тестовую БД в обычном аксеccе . Создайте одну табличку. Назовите ее по английски Table1.
Создайте в ней всего три поля schetchik,chislo,tekst. Типы данных надеюсь обьяснять не надо
Заполните эту табличку какой нибудь произвольной хренью, которая придет в голову. Числом записей этак на двадцать. Все , пациент к экспорту на мускул готов и ждет его.
Чтобы нормально, грамотно и очень быстро перенести данную таблицу на мускул (она может перенести естественно не только одну таблицу, но и тысячу. Сколько в аксессе есть, столько и перенесет. Если захотите, может и запросы прихватить), предлагаю установить дополнительную программку. Называется она Database Migration Toolkit.
Ну собственно тушка и таблетка находится
ТУТ
ESF Database Migration Toolkit Pro 6.3.27

Не забудьте про лекарства. Сейчас весна, переходный период. Витаминов не хватает. Таблетки помогут.
Рецепт только немного почитайте.
Скачиваете эту программку запускаете. В качестве источника указываете и находите вашу свежесозданную БД в аксеcсе. В качестве пункта назначения выбираете из списка
MySQL database
Server: localhost
Port:3306
User:root
Database: (Имя вашей базы, которую вы создали на серваке).

Не забудьте, что в этот момент мускул должен быть запущен. То есть перышко и шляпа должны быть видны внизу вашего экрана.
Ну там дальше прогресс бар, вы смотрите как заливается на мускул ваши таблы из акса, итд итп. После заливки закрываете программку миграции. Она вам больше не нужна сейчас (если еще ченить захотите потом экспортнуть, ради бога.)
Все, сервер и база готовы к приему аксесса.
Но аксесс не готов. Чтобы ему увидеть мускул, необходимо поставить переходник. То есть MyODBC driver . Это нужно для того, чтобы аксесс читал синтаксис сервака, и наоборот, сервак читал команды аксесса.
Скачать драйвер можно ЗДЕСЬ. Или поставить из приложения в данной статье. Файл называется ДРОВА МУСКУЛ. На 32 битный и 64 битный виндоуз . Выбирайте.
После скачки и установки драйвера, вам необходимо настроить источник данных , по которому аксесс будет связываться с серваком на мускуле.
Чтобы попасть в настройку источника данных- самый простой вариант:
ПУСК-> ВЫПОЛНИТЬ-> odbcad32-> Ок
А далее смотрите по рисунку:
Написание статей
Все. Источник для связки акса готов.
Теперь открываете аксесс и делаете следующее:
Написание статей
Все, вы прилинковались. Успехов. Далее работаете как в классике. Эксперементируйте. Не забывайте включать сервер перед работой акса и мускула. Осторожней с запросами на изменение. Иногда синтаксис не совпадает. Приятного аппетита.


Если моя статья помогла вам, можете кликнуть спасибку.

Кстати при выборе пакета MYSQL можно еще воспользоваться не менее креативной сборкой от наших земляков и поставить мускул от энтузиастов на NIMPBOX. Установить Апач,Мускул,Nginx,FileZilla можно
ЗДЕСЬ. В самопальной сборке очень удобно править настройки обеих серверов. Доступ прямо к файлу htdocs. Все перед глазами. Это не отступление от самой статьи. Это просто для тех, кто освоит инструкцию выше и захочет чего то большего.

Вот кстати сам сервак MySQL приложил. Установочный пакет. С Денвера.

С Уважением,
Сергей
53
Вложения
Тип файла: rar ДРОВА_МУСКУЛ.rar (6.90 Мб, 809 просмотров)
Тип файла: rar САМ_СЕРВАК.rar (6.12 Мб, 600 просмотров)
Ameli
2057 / 1133 / 38
Регистрация: 05.11.2009
Сообщений: 1,604
17.03.2012, 18:22 #22
Пример разработки структуры базы данных для деканата факультета ВУЗа (в дополнение к статье "О разработке структуры базы данных")

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

2. Определимся со списком данных, которые нужно хранить в бд
При этом распределяем данные по группам, в дальнейшем это поможет нам разбить данные по таблицам. Хотя набор таблиц может быть другим, но это может стать отправной точкой.
•Студенты в группах (форма обучения, бюджет/контракт, специальности, группы, специализации, ФИО студентов, дата рождения, их контактные данные)
•Преподаватели (ФИО преподавателей, кафедра, должность, звание, научная степень, контактные данные)
•Дисциплины (наименование дисциплины, кто из преподавателей читает или эту информацию отнести к Преподавателям?)
•Учебные планы по курсам (сколько часов какой дисциплины положено на каком курсе по какой специальности и специализации)
•Зачеты и экзамены (какие зачеты и экзамены должны сдавать студенты на определенном курсе, определенной специальности и специализации; результаты сдачи зачетов и экзаменов)
•Расписание занятий для студентов (по каждой группе: неделя (числитель/знаменатель), день недели, время занятия, аудитория, преподаватель, название дисциплины)
•Расписание занятий для преподавателей (по каждому преподавателю: неделя (числитель/знаменатель), день недели, время занятий, аудитория, дисциплина, группа)
•Расчет нагрузки преподавателей (сколько пар каждый день, составление диаграммы)
•Статистика по студентам (бюджет/контракт, рейтинги по оценкам за сдачу экзаменов)
•Начисление стипендии студентам по результатам сдачи экзаменов
При этом заметим, что некоторые данные будут входной информацией, некоторые выходной. Последние четыре пункта нашего списка можно отнести к выходной информации, т.к. введенных данных по всем предыдущим пунктам будет достаточно для получения этих данных.

3. Составим список таблиц
Каждой группе входных данных – своя таблица.
•Студенты
•Преподаватели
•Дисциплины
•Учебные планы
•Зачеты и экзамены
•Расписание занятий
Проанализируем каждую из таблиц на наличие повторяющихся данных:
1)Студенты: В примере студент 1-го курса, который еще не выбрал специализацию:
Основа обученияФорма обученияСпециальностьГруппаСпециализацияФИО студентаДата рожденияАдресТелефон
БюджеточнаяФизика80Ф-11 Иванов Иван Иванович01.01.1995ул. Мира, 5111-11-11
В этой таблице будет происходить дублирование каждой группы по количеству в ней студентов. Каждый раз придется писать номер группы вручную, это может привести к опечаткам, а затем к ошибкам при фильтрации по группе, например. Поэтому выделим группы в отдельную таблицу.
Специальность связана с группой, поэтому отнесем ее к таблице Группы. При этом название специальности все равно придется каждый раз дублировать, поэтому выделяем их в отдельную таблицу.
Также мы видим, что будет происходить дублирование полей Основа обучения и Форма обучения, поэтому эти значения также выделим в отдельные таблицы.
Аналогично со специализацией.
Т.о., вместо одной таблицы Студенты мы получили следующие:
•Специальности
•Группы
•Специализации
•Формы обучения
•Основы обучения
•Студенты
2)Преподаватели:
ФИО преподавателяКафедраДолжностьЗваниеНаучная степеньТелефон
Иванов Иван ИвановичВысшая математикаСтарший преподавательДоцентКандидат наук222-22-22
Здесь будет происходить дублирование по кафедрам, должностям, званиям, научным степеням, поэтому их также выделим в отдельные таблицы, избавив тем самым пользователей бд от необходимости вносить значения этих полей вручную.
Итак, вместо одной таблицы Преподаватели получаем следующие:
•Кафедры
•Должности
•Звания
•Научные степени
•Преподаватели
3)Дисциплины: здесь мы задали себе вопрос, должна ли содержаться в этой таблице информация о том, какой преподаватель читает данную дисциплину, или эту информацию стоит отнести к таблице Преподаватели (т.е. какие дисциплины читает)
ДисциплинаПреподаватель
Мат анализИванов Иван Иванович
Мат анализПетров Петр Петрович
Происходит дублирование названия дисциплины, если ее читает несколько преподавателей.
Если же мы сделаем наоборот и добавим дисциплину в таблицу Преподаватели, то будет происходить дублирование данных о преподавателе в случае чтения им нескольких дисциплин.
Выход из положения – помимо таблиц Преподаватели и Дисциплины, создание дополнительной таблицы Дисциплины по преподавателям, связывающей Преподавателей и Дисциплины.
•Дисциплины
•Дисциплины по преподавателям
4)Учебный план: он будет разным для каждого курса, специальности и специализации:
КурсСпециальностьСпециализацияДисциплинаКол-о часов
1Физика-Механика100
1Физика тв тела-Механика100
3ФизикаМЭЭлектродинамика100
3Физика тв телаМЭЭлектродинамика100
4ФизикаМЭАтомная физика100
4Физика тв телаМЭАтомная физика100
5ФизикаМЭМикроэлектроника100
5Физика тв телаМЭМикроэлектроника100
5 (маг)ФизикаМЭМикроэлектроника100
5 (маг)Физика тв телаМЭМикроэлектроника100
Здесь мы видим дублирование курса, и в принципе не сложно поставить номер курса каждый раз, но у нас имеется 5 (маг), который требует ввода текста, поэтому стоит вынести курсы в отдельную таблицу.
•Курсы
•Учебный план
5)Зачеты и экзамены, назовем эту таблицу Отчетность. Они будут также разными для курсов, специальностей и специализаций, а также семестров:
КурсСпециальностьСпециализацияСеместрДисциплинаВид отчетности
1Физика-1Мат анализЭкзамен
1Физика-1ФизкультураЗачет
Здесь мы видим, что будут дублироваться виды отчетности (зачет/экзамен), поэтому выделим их в отдельную таблицу.
Кроме этого должна быть таблица по сдаче студентами зачетов и экзаменов:
СтудентДата сдачиЗачет/экзаменОценка
Иванов Иван Иванович04.01.2012Мат анализ, экзамен5
Иванов Иван Иванович20.12.2011Физкультура, зачетЗачет
Где поле Зачет/экзамен – поле, связанное с предыдущей таблицей.
Оценки также будут дублироваться, поэтому их тоже стоит выделить в отдельную таблицу. При чем, система оценивания зависит от вида отчетности (зачет/экзамен).
Итак, получаем следующие таблицы:
•Виды отчетности
•Отчетность
•Оценки
•Сдача студентами экзаменов/зачетов
6)Расписание занятий:
НеделяДень неделиВремя занятийГруппаСпециализацияДисциплинаПреподавательТип занятияКорпусАудитория
ЧислительПонедельник8:30 – 10:0580Ф-11-Мат анализИванов Иван Ивановичлекцияглавный302
Будут дублироваться Недели, Дни недели, Время занятий, Типы занятий, Корпуса, Аудитории, поэтому все это выделяем в отдельные таблицы.
•Недели
•Дни недели
•Расписание звонков
•Типы занятий
•Корпуса
•Аудитории

Итак мы получили следующий набор таблиц:
•Курсы
•Специальности
•Группы
•Специализации
•Формы обучения
•Основы обучения
•Студенты
•Кафедры
•Должности
•Звания
•Научные степени
•Преподаватели
•Дисциплины
•Дисциплины по преподавателям
•Учебный план
•Виды отчетности
•Отчетность
•Оценки
•Сдача студентами экзаменов/зачетов
•Недели
•Дни недели
•Расписание звонков
•Типы занятий
•Корпуса
•Аудитории

4. Распределим данные по столбцам таблиц
•Курсы (Курс)
•Специальности (Специальность)
•Группы (Год создания, Специальность, Номер группы)
•Специализации (Специализация)
•Формы обучения (Форма обучения)
•Основы обучения (Основа обучения)
•Студенты (ФИО, Дата рождения, Адрес, Телефон, Основа обучения, Форма обучения, Группа, Специализация)
•Кафедры (Кафедра)
•Должности (Должность)
•Звания (Звание)
•Научные степени (Научная степень)
•Преподаватели (ФИО, Кафедра, Должность, Звание, Научная степень, Контакты)
•Дисциплины (Дисциплина)
•Дисциплины по преподавателям (Дисциплина, Преподаватель)
•Учебный план (Курс, Специальность, Специализация, Дисциплина, Количество часов)
•Виды отчетности (Вид отчетности)
•Отчетность (Курс, Специальность, Специализация, Семестр, Дисциплина, Вид отчетности)
•Оценки (Вид отчетности, Оценка)
•Сдача студентами экзаменов/зачетов (Студент, Дата, Отчетность, Преподаватель, Оценка)
•Недели (Вид недели)
•Дни недели (День недели)
•Расписание звонков (Номер пары, Время начала, Время окончания)
•Типы занятий (Тип занятия)
•Корпуса (Корпус)
•Аудитории (Корпус, Аудитория, Тип аудитории, Количество посадочных мест)
•Расписание занятий (Неделя, День недели, Время занятий, Группа, Специализация, Дисциплина, Тип занятия, Преподаватель, Аудитория)
•Типы аудиторий (Тип аудитории)
Появление последней таблицы обязано продумыванием полей для таблицы Аудитории: возникло бы дублирование типов аудиторий – лекционная, лаборатория и т.д.
Совет: добавлять поля для иерархии, чтобы можно было отфильтровывать список значений поля, стоящего ниже по иерархии, для удобства и ускорения поиска.
Например, на факультете есть специализации, каждая группа – выбранная специальность, она есть в таблице Группы, поэтому Специальность для Группы иерархически выше. Добавив выбор специальности в таблицу Студенты, можно будет отфильтровывать список групп для упрощения ее поиска в списке.
Аналогично с Расписанием занятий: добавим сюда поле Специальность для последующей фильтрации списка групп в списке.
И точно также поступим с Корпусами и Аудиториями в таблице Расписание занятий: добавим поле Корпус для иерархии (чтобы фильтровать аудитории по выбранному корпусу).
Вспомним о правиле, что лучше разбивать информацию на минимальные логические компоненты, поэтому поля ФИО таблиц Студенты и Преподаватели разобьем на три поля, поле Контакты таблицы Преподаватели разобьем на Адрес и Телефон. В дальнейшем это может упростить поиск данных, например. Из поля ФИО сложнее получить Фамилию и инициалы, чем из трех полей Фамилия, Имя, Отчество.
Как видим, наши таблицы не содержат вычисляемых данных, т.к. мы изначально определились, что будет входной информацией, а что выходной.
Учтем советы об именах полей и таблиц: имена, состоящие из нескольких слов, запишем без пробелов, разделяя символом подчеркивания или выделим с большой буквы.
Итак, после небольших корректировок таблицы будут содержать следующие поля:
•Курсы (Курс)
•Специальности (Специальность)
•Группы (Год_создания, Специальность, Номер_группы)
•Специализации (Специализация)
•Формы_обучения (Форма_обучения)
•Основы обучения (Основа_обучения)
•Студенты (Фамилия, Имя, Отчество, Дата_рождения, Адрес, Телефон, Основа_обучения, Форма_обучения, Специальность, Группа, Специализация)
•Кафедры (Кафедра)
•Должности (Должность)
•Звания (Звание)
•Научные_степени (Научная_степень)
•Преподаватели (Фамилия, Имя, Отчество, Кафедра, Должность, Звание, Научная_степень, Адрес, Телефон)
•Дисциплины (Дисциплина)
•Дисциплины/преподаватели (Дисциплина, Преподаватель)
•Учебный_план (Курс, Специальность, Специализация, Дисциплина, Количеств_ часов)
•Виды_отчетности (Вид_отчетности)
•Отчетность (Курс, Специальность, Специализация, Семестр, Дисциплина, Вид_отчетности)
•Оценки (Вид_отчетности, Оценка)
•Сдача_ экз/зач (Студент, Дата, Отчетность, Преподаватель, Оценка)
•Недели (Вид_недели)
•Дни_недели (День_недели)
•Расписание_звонков (Номер_пары, Время_начала, Время_окончания)
•Типы_занятий (Тип_занятия)
•Корпуса (Корпус)
•Аудитории (Корпус, Аудитория, Тип_аудитории, Количество_мест)
•Расписание_занятий (Неделя, День_недели, Время_занятий, Специальность, Группа, Специализация, Дисциплина, Тип_занятия, Преподаватель, Корпус, Аудитория)
•Типы аудиторий (Тип_аудитории)

5. Определим ключевые поля таблиц
Воспользуемся советом о том, что самый лучший и простой ключ для таблицы – счетчик, поэтому добавим его в каждую таблицу с название Код…, где вместо троеточия будем подставлять сокращенные названия таблиц. Это делается для того, что по названию сразу было видно из какой таблицы данный счетчик-ключ.
•Курсы (КодКурса, Курс)
•Специальности (КодСпециальности, Специальность)
•Группы (КодГруппы, Год_создания, Специальность, Номер_группы)
•Специализации (КодСпециализ, Специализация)
•Формы_обучения (КодФормыОбуч, Форма_обучения)
•Основы_обучения (КодОснОбуч, Основа_обучения)
•Студенты (КодСтуд, Фамилия, Имя, Отчество, Дата_рождения, Адрес, Телефон, Основа_обучения, Форма_обучения, Специальность, Группа, Специализация)
•Кафедры (КодКафедры, Кафедра)
•Должности (КодДолжности, Должность)
•Звания (КодЗвания, Звание)
•Научные_степени (КодНаучСт, Научная_степень)
•Преподаватели (КодПрепода, Фамилия, Имя, Отчество, Кафедра, Должность, Звание, Научная_степень, Адрес, Телефон)
•Дисциплины (КодДисц, Дисциплина)
•Дисциплины/преподаватели (КодДисцПреп, Дисциплина, Преподаватель)
•Учебный_план (КодУчПлан, Курс, Специальность, Специализация, Дисциплина, Количество_часов)
•Виды_отчетности (КодВидОтч, Вид_отчетности)
•Отчетность (КодОтч, Курс, Специальность, Специализация, Семестр, Дисциплина, Вид_отчетности)
•Оценки (КодОценки, Вид_отчетности, Оценка)
•Сдача_ экз/зач (КодСдачи, Студент, Дата, Отчетность, Преподаватель, Оценка)
•Недели (КодНед, Вид_недели)
•Дни_недели (КодДняНед, День_недели)
•Расписание_звонков (КодРасписЗв, Номер_пары, Время_начала, Время_окончания)
•Типы_занятий (КодТипЗан, Тип_занятия)
•Корпуса (КодКорп, Корпус)
•Аудитории (КодАуд,Корпус, Аудитория, Тип_аудитории, Количество_ мест)
•Расписание_занятий (КодРаспис, Неделя, День_недели, Время_занятий, Специальность, Группа, Специализация, Дисциплина, Тип_занятия, Преподаватель, Корпус, Аудитория)
•Типы_аудиторий (КодТипАуд, Тип_аудитории)

6. Определим типы данных и другие ограничения для полей
Определяем типы данных полей. Например, Дата рождения таблицы Студенты будет иметь тип Дата/время. Тоже касается полей Время начала, Время окончания таблицы Расписание звонков.
Помним, что тип данных первичных и внешних ключей (т.е. ссылок на первичные ключи) должен совпадать, а т.к. у нас все первичные ключи таблиц – счетчики, то все внешние ключи будут числового типа. Т.е. во внешних ключах будут содержаться первичные ключи – коды записей из связанных таблиц.
Например, поле Специальность таблицы Группы будет числовым, т.к. это внешний ключ таблицы Специальности, и будет связан с первичным ключом Специальностей на схеме данных.
Кроме определения типов данных, задаем также некоторые ограничения для полей. Например, сделаем в поле Семестр подстановку значений 1,2 и зададим свойство Ограничиться списком = Да.
Для полей Время начала и Время окончания таблицы Расписание звонков зададим Формат поля – Краткий формат времени.
К примеру, для поля Курс таблицы Курсы можно задать размер поля 10, т.к. больше 10-символов в этом поле вряд ли будет. Этим мы уменьшаем размер бд, т.е. экономим дисковое пространство.

7. Определим связи между таблицами
Мы планировали связывание таблиц еще на этапе распределения данных по таблицам, поэтому изначально добавляли в нужные места внешние ключи (т.е. ссылки на первичные ключи). Поэтому мы просто соединяем первичные ключи таблиц с внешними ключами.
Например, для таблицы Специализации первичным ключом будет поле КодСпециализ, а внешними ключами для этой таблицы будут поля Специализация таблиц Студенты, Отчетность, Учебный план, Расписание занятий. На схеме данных соединяем их с первичным ключом таблицы Специализация.
И так, проверяя каждую из таблиц, расставляем связи, используя Обеспечение целостности данных.
Новичкам же, возможно, придется на этом этапе проектирования добавлять внешние ключи для связывания таблиц, а может и отдельные связующие таблицы.
Написание статей


Обсуждение статьи
30
Вложения
Тип файла: rar Пример бд.rar (39.9 Кб, 2461 просмотров)
mobile
Эксперт MS Access
22432 / 12750 / 2596
Регистрация: 28.04.2012
Сообщений: 13,942
14.01.2016, 16:58 #23
В Microsoft выпустили хелп-файлы по идентификаторам интерфейса управления библиотеки офиса (Microsoft Office 14.0 Object Library) - https://www.microsoft.com/en-us/download/confirmation.aspx?id=6627 для офиса 10. Статья была видимо подготовлена давно, но никаких ссылок на нее в сети не видел. А очень полезная. Дает имена контролов, тип и ID всех контролов, которые могут быть использованы в меню, контекстном меню, на ленте или выполнены. Особый интерес, для меня во всяком случае, что с помощью команды ExecuteMso можно выполнить любую команду меню. Синтаксис: (пример для вызова диалога принтера)
Visual Basic
1
Application.CommandBars.ExecuteMso "PrintDialogAccess"
Прикладываю скачанный файл со списком команд для всех программ офиса. Для использования команд надо подключать библиотеку офиса Microsoft Office ХХ.0 Object Library. Большая часть команд из файла AccessControls.xlsx пригодна и для старших офисов 2003, 2007.

Весьма любопытно использование команд для других программ офиса. Например в екселе процедура красит цветом по умолчанию текущую ячейку (команды из файла ExcelControls.xlsx во вложении)
Visual Basic
1
2
3
4
Sub SelectionFillColor()
'закрасить ячейки текущим цветом из палитры
    Application.CommandBars.ExecuteMso "CellFillColorPicker"
End Sub
8
Вложения
Тип файла: rar Office2010ControlIDs.rar (2.43 Мб, 86 просмотров)
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 330
Завершенные тесты: 1
10.02.2016, 07:49 #24
Но всё правило.
0
nizami95
0 / 0 / 0
Регистрация: 08.11.2014
Сообщений: 5
19.04.2016, 02:00 #25
Спасибо, помогло!
0
mobile
Эксперт MS Access
22432 / 12750 / 2596
Регистрация: 28.04.2012
Сообщений: 13,942
22.09.2016, 11:23 #26
В последнее время участились примеры баз с модулями без использования Option Explicit. Хотя и раньше их было немало. В связи с этим размещаю небольшую, но выразительную статью автора Shoker.Pro с другого форума.
К сожалению, по правилам cyberforum.ru не могу дать ссылку на первоисточник
Используйте Option Explicit

Напишите в заголовке каждого своего модуля (то есть перед всеми другими переменными, функциями и процедурами):
Visual Basic
1
Option Explicit
Что это значит?
Это значит, что отныне все переменные, которые вы используете в своей программе, нужно будет объявить явно с помощью оператора объявления Dim.
То есть, если у вас есть процедура:
Visual Basic
1
2
3
4
5
6
7
8
9
Private Sub Command1_Click()
 
For i = 1 To 5
  k = "Проход №" + CStr(i)
  '..............
  '..............
Next
 
End Sub
она должна стать такой:
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub Command1_Click()
 
Dim i As Integer, k As String
For i = 1 To 5
  k = "Проход №" + CStr(i)
  '..............
  '..............
Next
 
End Sub
Зачем это нужно?
Если вам дали ссылку на эту статью, значит в своей программе вы допустили ошибку или проявили непонимание, которые можно устранить с помощью Option Explicit. Дело в том, что в случае отсутствия этой опции, VB/VBA встретив незнакомое ему слово, считает его новой переменной. Хотя вы, скорее всего, имели ввиду совершенно другое.


Типичные ошибки:
Visual Basic
1
2
3
4
MyNiceVariable = 5
'..............
If MyNceVariable = 5 Then 'ошибка в имени переменной
                          'VBA решит, что вы ввели новую переменную
Visual Basic
1
2
y = xmod10 'вариант ошибки в синтаксисе (вместо y = x mod 10)
           'VBA решит, что xmod10 - это новая переменная
Visual Basic
1
2
Workbooks(Книга1).Close 'ошибка в использовании текстовой константы (нет кавычек)
                        'VBA решит, что Книга1 - это новая переменная
Visual Basic
1
2
3
4
5
6
k = "Hello World"
'..............
'..............
'..............
p = k + 5 'использование переменной неверного типа (так как тип переменной
          'не объявлен явно в Dim)

Это далеко не полный перечень возможных ошибок. Нередки также случаи путаницы русских и английских букв в имени переменной.
Еще раз отмечу, что использование Option Explicit существенно сократит время решения вашей задачи, потому что вместо ожидания ответа на форуме вы получите вполне осмысленное сообщение от компилятора.

Как включить:
Tools => Options => Editor => Require Variable Declaration
Включите этот флажок и Option Explicit будет появляться автоматически во всех новых модулях/формах/классах (в старых не появится, нужно будет прописать вручную)
5
habdulov
201 / 22 / 4
Регистрация: 27.01.2015
Сообщений: 313
Записей в блоге: 1
27.12.2016, 17:01 #27
Цитата Сообщение от БурундукЪ Посмотреть сообщение
При удалении данных в таблица
а как вообще удалить?
0
brown-aleks
0 / 0 / 0
Регистрация: 03.01.2015
Сообщений: 9
05.09.2017, 10:18 #28
Цитата Сообщение от Сергей1980 Посмотреть сообщение
Если моя статья помогла вам, можете кликнуть спасибку.
Огромное Вам спасибо! И низкий поклон, за то что пролили свет на тёмные пятна моих познаний. Давно искал способы реализации такой идеи. Кнопку "Спасибка" не нашёл, но от вашей статьи и приложенных к ней файликов я в восторге!

Добавлено через 11 часов 39 минут
Цитата Сообщение от Сергей1980 Посмотреть сообщение
1) самая большая скорость работы, по сравнению с остальными вариантами. (те, кто скажет что в мускуле нет транзакций, можно отхлестать по заднице до покраснения)) В версии 5 все есть)
Всё настроил. Запустил. Работает норм! только вот один косяк не могу понять.... когда Access обращается на сервер через связанную таблицу... на жёсткий диск нагрузка 100% приложение подвисает секунд на 5-30 (зависит от количества записей в данной таблице). Приходят данные свежие, явно подгруженные с сервера, но для чего так жёстки диск нагружать? И ведь пока с диском работать не за кончает, запрашиваемую таблицу не отображает. А если запрос на обновление из нескольких таблиц, то вообще, за это время можно и вздремнуть немного . Количество записей в таблицах совсем крохотное 100-150 максимум. Скорость сети 100Мбит/с. База данных MySQL на хостинге в REG.RU по безлимитному тарифу. Что я настроил не так?
0
05.09.2017, 10:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.09.2017, 10:18
Привет! Вот еще темы с ответами:

Написание строковой функции в VBA - MS Access
В Access необходимо написать функцию, которая бы принимала в качестве аргумента строковое поле таблицы, а точнее его значение. Функция...

Объявляется тендер на написание простейшей БД!! - Базы данных
Объявляется тендер на написание простейшей БД! Кто заинтересовался пишите на diamondhall@mail.ru КЛУБНАЯ СИСТЕМА Для увеличения...

Меню dBase (написание текста программы) - Базы данных
Доброго времени суток =^_^= Не могу не как решить одну поставленную задачу. Вроде довольно легкая, но при выполнение ерунда всякая...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru