Как заполнить новую таблицу данными...
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Как заполнить новую таблицу данными... Expand / Collapse
Автор
Сообщение
12.10.2005 12:11
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.04.2007 9:22
Сообщ.: 106, Visits: 1 209
Как заполнить новую таблицу данными, которые есть запрос к другой таблице средствами SQL?
Т.е., другими словами, как скопировать данные из запроса в новую таблицу средствами SQL?
Сообщ. #882451
12.10.2005 12:32
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
INSERT INTO table1 (field1, field2, ..., fieldN) SELECT field1, field2, ..., fieldN FROM table2
Сообщ. #882455
12.10.2005 14:44
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 23.04.2007 9:22
Сообщ.: 106, Visits: 1 209
спасибо, то, что надо.
Сообщ. #882468
31.10.2005 14:56
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 23.11.2005 14:35
Сообщ.: 5, Visits: 56
Хочу сделать тоже самое, но при этом table2 это база dBase *.dbf, тоесть посредством SQL запроса конвертировать из DBase в SQL Сервер.
Сообщ. #883790
31.10.2005 15:06
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Надо использовать DTS (Data Transformation Services) - в Enterprise Manager есть соответствующий Wizard.

Или через Access извратиться. Создать в системе два DSN: первый указывает на dbf файл, второй на SQL сервер. Затем в Access создать таблицы из внешнего источника для каждого DSN. А затем выполнить запрос, который был приведен выше.
Сообщ. #883791
01.11.2005 7:17
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 23.11.2005 14:35
Сообщ.: 5, Visits: 56
да нет на самом деле все проще, я сделал так:
insert into baza96
select * FROM OPENROWSET(''MSDASQL'',
''Driver={Microsoft dBase Driver (*.dbf)};
SourceDB=\\kamychev\share\baza96.dbf;
DefaultDir=\\kamychev\share\;
SourceType=DBF;Exclusive=No;BackgroundFetch=Yes;Collate=Russian;Null=No;Deleted=No;'',
''SELECT * FROM [baza96]'')

на локальном сервере работает, а на удаленном пишет:
Server: Msg 7415, Level 16, State 1, Line 1
Ad hoc access to OLE DB provider ''MSDASQL'' has been denied. You must access this provider through a linked server.

я так и не понял какой ему доступ нужен помогите пожалуйста, какую опцию включить надо, а то программы будут запускаться на клиентской машине и запрос соответственно не работает!
Сообщ. #883833
01.11.2005 9:19


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.03.2008 15:26
Сообщ.: 701, Visits: 7 028
Проще все-же через DTS.
Package пишется мастером за 10 секунд, а потом хочешь его запускай из командной строки, хочешь ставь в задания Job.
Выбираешь All Tasks/Import Data, а далее все понятно.
Указываешь источник, приемник. Только нужно будет галочку поставить
"Save DTS Package", после выполнения он появляется у тебя на сервере,
на котором ты выбрал сохранение пакета. Можно редактировать, запускать вручную
и т.п. Настоятельно рекомендую попробовать!
Сообщ. #883839
01.11.2005 11:09
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 23.11.2005 14:35
Сообщ.: 5, Visits: 56
[quote="Silver"]Проще все-же через DTS.
Package пишется мастером за 10 секунд, а потом хочешь его запускай из командной строки, хочешь ставь в задания Job.
Выбираешь All Tasks/Import Data, а далее все понятно.
Указываешь источник, приемник. Только нужно будет галочку поставить
"Save DTS Package", после выполнения он появляется у тебя на сервере,
на котором ты выбрал сохранение пакета. Можно редактировать, запускать вручную
и т.п. Настоятельно рекомендую попробовать![/quote]
а как запустить Package из программы, скажите пожалуйста? или ссылку дайте если не сложно, я программирую на дельфи!
Сообщ. #883846
01.11.2005 12:19


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 27.03.2008 15:26
Сообщ.: 701, Visits: 7 028
Для запуска Package из командной строки есть два пути:
1. Запустить DTSrun.exe и посмотреть параметры командной строки.
Толь