Копирование баз Access
Один чевак открывает планировщик, видит, что то-то он сделал, ставит галочки, в базу напротив этой записи в поле Done ставится 1. Значит другой чувак, открыв этот планировщик эту запись уже не увидит. Как сделать, чтобы пользоваться могло несколько человек? Может быть, когда кто-то создаёт учётную запись, можно скопировать имеющуюся базу данных, назвать её именем данной учётной записи - т.е. для каждой учётной записи будет одноимённая база данных - личная?
Цитата: Washington
Значит другой чувак, открыв этот планировщик эту запись уже не увидит. Как сделать, чтобы пользоваться могло несколько человек?
Такое чувство, что ты сам себя запутал :) Планировщик кто пишет? Ты, или кто-то другой?
Цитата: Washington
Может быть, когда кто-то создаёт учётную запись, можно скопировать имеющуюся базу данных, назвать её именем данной учётной записи - т.е. для каждой учётной записи будет одноимённая база данных - личная?
Зачем такие сложности? Не проще ли добавить в таблицу еще одно поле, которое будет идентифицировать принадлежность конкретной записи конкретному пользователю. Можно предусмотреть значение для этого поля, указывающее что поле принадлежит всем пользователям. Все остальное разруливается SQL запросами. Естественно, программа должна "знать", какой пользователь работает с ней в данный момент...
Вот как то так... или я сам чего-то недопонял :)
Нет, планировщик то я пишу, но пользоваться им будут другие люди. А насчёт создания полей, если можно подскажи, как их создавать. Мне эта идея тоже приходила, но как-то я её не осилил. А так вроде ты меня вполне правильно понял.
Цитата: Washington
Может быть, когда кто-то создаёт учётную запись, можно скопировать имеющуюся базу данных, назвать её именем данной учётной записи - т.е. для каждой учётной записи будет одноимённая база данных - личная?
С реляционной точки зрения лучше будет создать ещё одну таблицу, хранящую привязки заданий пользователям. В ней и ставить галочки.
1. Для каждого пользователя индивидуальные задания.
Добавь в таблицу заданий поле UserId, которое будет внешним ключом для связи с таблицей "Пользователи" и будет характеризовать, для какого пользователя данное задание.
2. Задания являются одинаковыми для всех пользователей (это вариант Freeman).
Создай еще одну таблицу (статус выполнения задания для пользователей), которая будет содержать, как минимум, 3 поля - TaskId, UserId и признак выполнения задания (из таблицы заданий его нужно будет удалить). Логически, записи данной таблицы будут содержать следующую информацию: Пользователь UserId (из таблицы "Пользователи") выполнил/не выполнил (признак выполнения) задание TaskId (из таблицы "Задания") Итого получается 3 таблицы.
...Немного сумбурно получилось, но, надеюсь разберешся :)
ЗЫ: Вообще, почитай какую нибудь книжку по реляционным базам данных - таких вопросов больше не возникнет ;)