Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Access

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Открыть новую тему     Написать ответ в эту тему

Wizzz_art



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

HELP | Обсуждение | FAQ

 
| В варезнике ищите по полному наименованию: Microsoft Office 2003-2016 |

 
Реляционная система управления базами данных (СУБД) корпорации Microsoft. Входит в состав пакета Microsoft Office. Имеет широкий спектр функций, включая связанные запросы, связь с внешними таблицами и базами данных. Благодаря встроенному языку VBA, в самом Access можно писать приложения, работающие с базами данных.
 

Смежные темы:
Программы » Microsoft Office 2019 & 365 | 2016 | 2013 | 2010 | 2007 | 2003
Программы » OneNote | Outlook 2013 & 2016 & 2019 | Outlook 2010 | Microsoft Mathematics & Math Solver
Программы » Word FAQ | Excel FAQ
Прикладное программирование » Word VBA | Excel VBA | Access VBA  
Андеграунд » Microsoft Office 2019 | 2016 | 2013 | 2010 | 2007 | 2003
Андеграунд » OneNote | Visio | SharePoint Server | Project Server | Exchange Server
Андеграунд » Надстройки (add-ins) и коммерческие макросы Excel
Андеграунд » Самостоятельная сборка дистрибутивов Оffice 2007/2010/2013/2016 | MUI для Office 2007

Всего записей: 310 | Зарегистр. 28-04-2002 | Отправлено: 19:06 12-09-2002 | Исправлено: AlexDAT, 03:36 03-09-2020
sergey2005

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
зачем заносить вычисления в таблицу?
делай запрос с выборкой двух столбцов и третьего с вычислениями.

Всего записей: 9 | Зарегистр. 13-01-2007 | Отправлено: 12:06 26-04-2007
Avsel



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Затем строй отчет на основании этого ОДНОГО запроса.

Спасибо, помогло

Всего записей: 395 | Зарегистр. 03-10-2002 | Отправлено: 20:55 26-04-2007
NightSpamer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MSAccess2002, несколько таблиц и запрос на обновление.
WinXP: без проблем
Win98: за редким исключением (на 2х машинах всё ок) при попытке обновить таблицу с помощью запроса вижу "В операции должен использоваться обновляемый запрос"
*.mdb файл просто копировался между машинами (были попытки запустить и с сетевого диска - результат не менялся). Версии Access-а совпадают, установленные компоненты тоже.
Проблема: (Win98, разумеется) запрос выполняется на 2-х машинах, и наотрез отказывается выполняться на других (как минимум на 6-ти).
Вопрос: чего не хватает на машинах, где запрос не выполняется? (Или он и не должен? Тогда - почему выполняется на 2-х?...)
 
Запрос:

Код:
UPDATE ((обновляемая INNER JOIN источник1 ON обновляемая.ID = источник1.ID) INNER JOIN источник2 ON обновляемая.ID = источник2.ID) INNER JOIN источник3 ON обновляемая.ID = источник3.ID SET обновляемая.поле1 = <функция от (источник1.поле1)>, обновляемая.поле2 = <функция от (источник1.поле2)>, обновляемая.поле3 = <функция от (обновляемая.поле4,источник1.поле3,источник2.поле1,источник3.поле1)>
WITH OWNERACCESS OPTION;
 

Таблицы:
обновляемая: ID не индекс; есть ключевое поле, но в запросе не используется.
источник1: индексов/ключей нет
источник2: ID-ключевое поле
источник3: индексов/ключей нет
 
Добавлено:
Танцевал с бубном, оказалось, что на "больных" машинах запрос не может изменить таблицу если данные берутся из нескольких таблиц
Т.е. конструкция
Код:
UPDATE обновляемая INNER JOIN источник1 ON обновляемая.ID = источник1.ID SET обновляемая.поле1 = <функция от (источник1.поле1)>, обновляемая.поле2 = <функция от (источник1.поле2)>
WITH OWNERACCESS OPTION;
работает.
Путь к решению наметился, но вопрос остался открытым.

Всего записей: 291 | Зарегистр. 28-11-2006 | Отправлено: 16:04 28-04-2007 | Исправлено: NightSpamer, 16:40 28-04-2007
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
NightSpamer
MDAC версия одинаковая?

Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 21:40 28-04-2007
Semarex



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
sergey2005
 
Мда сорри =) я собствено чуть ступил, все сделал через запросы.

Всего записей: 117 | Зарегистр. 20-10-2005 | Отправлено: 10:34 29-04-2007
NightSpamer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dneprcomp
Теперь одинаковые (взял последнюю - 2.8 SP1). Проблема осталась. Кстати, как посмотреть, какая версия установлена? Чего-то я не нашёл...
Ещё мысли есть по этому поводу?
 
Добавлено:
Всё. Решилась проблема Не хватало обновления Jet40SP8_9xNT.exe

Всего записей: 291 | Зарегистр. 28-11-2006 | Отправлено: 10:02 03-05-2007
Polarhnik

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Имеется проблема - при запуске базы (Access 2003) вылезает окно - процесс остановлен ядром базы данных Microsoft Jet, т.к другой пользователь пытается одновременно изменить те же данные.
Пользователь на компе один.
Если базу нельзя запустить, то можно ли выгрузить каким то образом записи?
Спасибо.

Всего записей: 20 | Зарегистр. 26-03-2006 | Отправлено: 20:37 03-05-2007
Avsel



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Такое дело. Есть Таблица с данными про фирмы: код, название, год создания и т.д., и есть другая таблица  в которой есть: все возможные коды и соответствующие им названия. Хочу сделать чтоб при заполнении в первой таблице после ввода кода название автоматически заполнялось со второй таблицы. Как это сделать? Спасибо.

Всего записей: 395 | Зарегистр. 03-10-2002 | Отправлено: 00:05 05-05-2007
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Avsel для ТВОЕГО случая(таблиц) в конструкторе таблиц есть "мастер подстановок"

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 10:53 05-05-2007
Avsel



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ну я так и хочу, только не знаю как

Всего записей: 395 | Зарегистр. 03-10-2002 | Отправлено: 08:11 06-05-2007
NightSpamer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Polarhnik

Цитата:
то можно ли выгрузить каким то образом записи?

Да. Создать новую (пустую) базу и импортировать таблицы в неё. В 90% случаев работает.

Всего записей: 291 | Зарегистр. 28-11-2006 | Отправлено: 09:21 07-05-2007
Lichi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Числовые и денежные поля  
Каким образом можно округлить значения в этих полях до целого числа.
Например, если итоговое значение в поле 50,52 до 50
 
И есть ли возможность в Access подтверждать в формах изменение записей. Т.е. например, имеется запись, в эту запись добавляем, изменяем данные в ФОРМЕ (не в ТАБЛИЦАХ), возможно ли , чтобы при этих действиях Access "запрашивал" подтверждение на изменение записи?
 
Спасибо

Всего записей: 52 | Зарегистр. 20-02-2005 | Отправлено: 18:33 09-05-2007
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Lichi

Цитата:
И есть ли возможность в Access подтверждать в формах изменение записей. Т.е. например, имеется запись, в эту запись добавляем, изменяем данные в ФОРМЕ (не в ТАБЛИЦАХ), возможно ли , чтобы при этих действиях Access "запрашивал" подтверждение на изменение записи?

пиши обработчик события формы "До обновления"
  Private Sub object_BeforeUpdate(Cancel As Integer)
сам акцесс не запросит, а запроси ТЫ, с пом. MsgBox . Eсли ответ получаешь отрицательный - то устанавливаешь Cancel в True

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 23:01 09-05-2007
Lichi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а как насчет округлить значения?

Всего записей: 52 | Зарегистр. 20-02-2005 | Отправлено: 23:53 09-05-2007
NightSpamer



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Lichi
Запросом на обновление...

Код:
UPDATE MyTable SET [MyTable].[MyField] = Fix([MyTable].[MyField])

Вместо Fix(n) можно использовать Int(n) или Round(n;prec). Последняя даёт возможность указать, до какого знака округлять.
Ну или в свойствах поля поставить "число десятичных знаков" = 0 (не трогает данные, но отображает округлённые занчения)

Всего записей: 291 | Зарегистр. 28-11-2006 | Отправлено: 09:28 10-05-2007 | Исправлено: NightSpamer, 09:29 10-05-2007
kravitz



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Нужен человек для создания небольшой БД в Access для института. Оплата по Я.деньги  
ICQ 215011571  
kushnarva[sobaka]mail.ru  

Всего записей: 90 | Зарегистр. 15-12-2001 | Отправлено: 19:42 11-05-2007
Lichi

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
jONES1979

Цитата:
пиши обработчик события формы "До обновления"  
  Private Sub object_BeforeUpdate(Cancel As Integer)  
сам акцесс не запросит, а запроси ТЫ, с пом. MsgBox . Eсли ответ получаешь отрицательный - то устанавливаешь Cancel в True
 

Я в программировании не особо силен, может подскажите последовательность действий.  
1) Запускаю ФОРМУ в режиме КОНСТРУКТОРА
2) Запускаю ОБРАБОТЧИЕ СОБЫТИЙ - открывается VisualBasic с кодом  
 
Option Compare Database
 
Private Sub ОбластьДанных_Click()
 
End Sub  
 
Куда вводить вышеописанный код (ДО ОБНОВЛЕНИЯ)?
Помогите, пожалуйста

Всего записей: 52 | Зарегистр. 20-02-2005 | Отправлено: 11:57 14-05-2007 | Исправлено: Lichi, 11:58 14-05-2007
polsolar

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста.  
Знаю, вопрос примитивный, но с access'ом не сталкивался раньше.
Нужна БД поставщиков продукции. необходимо, чтобы в схеме данных отношения таблицы поставщики-товары были не один ко многим, а так, чтобы один товар - много поставщиков, и одновременно один поставщик - много товаров.  
Как это сделать?
Спасибо.

Всего записей: 1 | Зарегистр. 14-05-2007 | Отправлено: 12:59 14-05-2007
anryk



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а каким способом можно реализовать следующее:
есть таблица с двумя полям, например:
A|B  
A|D
A|C
нужно чтобы дальше стало B|D, B|C, D|C
т.е. если в строках есть одинаковые значения, то связать все значения данных строк друг с другом...

Всего записей: 1066 | Зарегистр. 04-04-2002 | Отправлено: 18:06 14-05-2007
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
polsolar

Цитата:
Знаю, вопрос примитивный, но с access'ом не сталкивался раньше.

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

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 20:40 14-05-2007 | Исправлено: jONES1979, 20:42 14-05-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Access


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru