Как сделать копию таблицы в access

Обновлено: 04.07.2024

поэтому я хотел бы скопировать связанную таблицу в локальную в коде, структуре и данных в MS Access 2003.

UPDATE: я хочу, чтобы структура копирования и поведение данных из ms access сохраняли первичные ключи. Если вы копируете связанную таблицу, вы можете вставить ее как " структура и данные (локальная таблица)" Это то, чего я хочу достичь в коде.

Я понимаю, что DAO не поддерживает десятичный тип данных, но ADOX поддерживает. Вот обновленная процедура, которая использует ADOX вместо копирования схемы в новую таблицу.

один интересный элемент Примечания: поставщик OLEDB для Jet сортирует столбцы в алфавитном порядке, а не по порядковому положению, как объясняется в этой статье. Я не беспокоился о сохранении порядкового положения, но вы можете быть, и в этом случае вы можете обновить эту процедуру, чтобы удовлетворить свои по необходимости.

для того, чтобы версия кода ADOX работала, вам нужно установить ссылку на Microsoft ADO Ext. 2.x для DDL и безопасности (где x = номер версии; я использовал 2.8 для проверки этой процедуры). Вам также понадобится ссылка на ADO.

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

Создавать просто копию у меня получается, но почему то ключевые поля становятся не ключевыми.

Как потом поля изменить на ключевые.

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

Создавать просто копию у меня получается, но почему то ключевые поля становятся не ключевыми.

OleDbCommand com = new OleDbCommand("SELECT * INTO FORM1 FROM NEW", connection);
Как потом поля изменить на ключевые.

OleDbCommand com = new OleDbCommand("CREATE TABLE 111 (idKey counter(1,1), Nuchast STRING
CONSTRAINT Nuchast PRIMARY KEY, Nuchast1 STRING CONSTRAINT Nuchast1 PRIMARY KEY)", connection);

Ввод данных в таблицу можно осуществлять не только непосредственно с клавиатуры, но и с помощью команд копирования и перемещения. Для того чтобы вырезать или скопировать текст, необходимо выделить его и нажать на соответствующую кнопку на панели инструментов: Вырезать (Cut) или Копировать (Сору). При этом выделенная информация будет перемещена или скопирована в буфер обмена. Чтобы вставить скопированную информацию, следует установить курсор на то место, куда ее предполагается вставить, и нажать кнопку Вставить (Paste) на панели инструментов.

В таблице Access можно так же, как в рабочем листе Excel, выделить диапазон ячеек (рис. 2.38). Для этого нужно сначала подвести указатель мыши к левой границе левой верхней ячейки, дождаться, когда курсор примет форму крестика, после этого нажать левую кнопку мыши и, удерживая эту кнопку, переместить указатель в нижнюю правую ячейку и отпустить кнопку мыши.

Для удобства использования буфер обмена в Microsoft Office 2002 расширен и позволяет включать в себя до 24 скопированных элементов. Чтобы воспользоваться возможностями нового буфера обмена, необходимо в меню Вид (View) выбрать команду Панели инструментов (Toolbars) и установить флажок Область задач (Task Pane). На экране справа появится панель инструментов. Щелкнув по кнопке выбора на заголовке этой панели, выберите из выпадающего меню пункт Буфер обмена (Clipboard) (рис. 2.39).

При копировании или вырезании информации на панели буфера обмена будет появляться очередной значок, обозначающий скопированные данные, а также начальные литеры, если был скопирован текст, или уменьшенное изображение, если был скопирован рисунок. Общее количество блоков скопированной информации не превышает 24. При копировании 25-го элемента будет произведено удаление первого вставленного элемента. Порядок замещения блоков информации в буфере обмена организован по принципу очереди FIFO (First In First Out — "первый пришел, первый ушел").

При нажатии на кнопку Вставить (Paste) панели инструментов вставляется последний скопированный или вырезанный блок информации. Чтобы вставить любой из 24 последних скопированных блоков, необходимо щелкнуть левой кнопкой мыши на значке, соответствующем этому блоку. Или, если задержать указатель мыши на значке блока, справа появится кнопка выпадающего меню, из которого можно выбрать:

  • Вставить (Paste) — вставить данный блок в текст;
  • Удалить (Delete) — удалить данный блок из буфера обмена.

Чтобы вставить все скопированные блоки, необходимо нажать кнопку Вставить все (Paste All) на панели инструментов Буфер обмена (Clipboard). Чтобы удалить из буфера обмена всю информацию, необходимо нажать кнопку Очистить все (Clear All) на той же панели.

Работой буфера обмена управляют четыре параметра (флажка), которые можно установить или снять, выбрав их из выпадающего меню на кнопке Параметры (Options) в области задач Буфера обмена (Clipboard):

Чтобы закрыть область задач Буфер обмена (Clipboard), необходимо нажать кнопку Закрыть (Close), которая находится справа на строке меню этой области.


это не в моей голове, так что, надеюсь, это сработает!

INSERT INTO Table2 (ProductId, ProductCat) ВЫБРАТЬ Table1.ID, Table1.Field1 ИЗ Table1;


это не работает, мне нужен скрипт, который будет работать по всему Table1 и копировать все в Table2, и это спрашивает меня, что вставить

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

Я обновил его до вашего комментария, исходя из того, что я изначально поставил. Можете ли вы попробовать еще раз, пожалуйста?

Читайте также: