|
|
|
| Подскажите, пожалуйста, как программно изменить свойство "Индексированное поле" одного из полей таблицы на "Да (Совпадения не допускаются)". Спасибо. | |
|
| |
|
|
|
| Недопонятка а зачем? А если в нем будут совпадения в то время, когда оно не будет индексированным с допустимыми совпадениями, тогда что будет? Да и зачем менять индексацию поля в принципе? | |
|
| |
|
|
|
| Я хочу сделать копию всех данных, хранящихся на SQL сервере в базе данных Access. Необходимость возникла после преобразования моего Access-проекта в связку данные на SQL-сервере + Access приложение. Сервер "виден" только в локальной сети организации, а мне необходимо, чтобы в случае сбоев в работе программы я могла по электронной почте или иным способом получить все данные из базы для отладки уже по системе Access-данные + Access-приложение.
Делаю так: Программно создаю новую базу данных и копирую в нее каждую таблицу. Для копирования таблицы я создаю новую таблицу в базе данных, создаю все поля, которые есть в таблице-источнике, и копирую туда данные. При создании поля я умею указывать только тип и размер данных, а для полноценной работы нужно уметь также сделать некоторые поля ключевыми.
Надеюсь получить конструктивный совет. | |
|
| |
|
|
|
| Вопрос явно не по окладу. Но зачем все данные по почте или еще как.
1. Там мегабайты могут быть сугубо персональной информации, которую нельзя сливать. Нито нарушение 152ФЗ
2. Зачем создавать таблицу с полями. Не проще ли импортировать таблицы в новую базу. (Сделать связи) и не городить огород. | |
|
| |
|
|
|
| Если бы Вы мне рассказали, как их импортировать, я была бы счастлива. Пробовала просто копировать методом CopyObject - создается прилинкованная таблица, а мне нужна локальная с данными. | |
|
| |
|
83 Кб. |
|
| =>
ну а там из нужного места выбрать базу, отметить что надо и удачи. | |
|
| |
|
|
|
| Спасибо, но мне нужна программная реализация, чтобы поместить на форму кнопку сброса данных. Это точно будет часто используемая операция, и делать ее придется далеко не всегда тем, кого можно научить сложным действиям. | |
|
| |
|
|
|
| Откройте редактор макросов
разберитесь в командах
КопироватьОбъект
ПреобразоватьБазуДанных
заполните в макросе нужные данные
сохраните макрос
сервис-макрос-преобразовать макросы
откройте редактор VBA
осталось посмотреть что получилось | |
|
| |
|
|
|
| Начну с замечания, парадигма программирования для mdb и SQL server сильно различаются. Так что использовать для отладки сиквельного приложения MDB . IMHO, не самый разумный подход.
Решения работающие на MDB могут быть нерабочими в slq, и наоборот, то что легко решается средствами SQL server на ACCESS требует тысяч строк кода либо вообще не решается.
SQL server умеет экспортировать данные в MDB причем может это делать автомтически (с тарых версиях это называлось DTS, c 2005 SSIS (SQL Server Integration Services))
Кроме того можно создать на sql сервере связанный (linked) сервер "привязав" базу mdbс тажными таблицами нужной структуры, тогда таблицы ACCESS видны из базы сервера и можно будет простыми запросами добавлять в них данные их серверных таблиц.
НО!!!
исходя из замечания, IMHO, самый привильный путь использовать бакап SQL базы. Который можно поднять на любом другом SQL cервере установленном локально (например Express или старые версии MSDE) и уже с этой базой вести отладку. Т.е. и разработка и отладка и собственно работа будут в однородной среде.
По существу вопроса, нужно не только поменять свойство поля но и создать ключ, сделат ьэто можно
- SQL
см. Help по Alter Table, alter column и create Index,
- с помощью ADOX
http://hiprog.com/index.php?option=com_content&task=view&id=251661555
или dao
http://hiprog.com/index.php?option=com_content&task=view&id=327 | |
|
| |
|
|
|
| Большое спасибо! Разбираюсь. | |
|
| |
|
|
|
| cвойство поля но и создать ключ |
читать как
"cвойство поля но и создать ИНДЕКС" | |
|
| |