2014-10-22 2 views
-1

Привет, мне нужно запустить этот скрипт для вставки данных с другого сервера на локальный SQL-сервер. Как я могу определить путь? CMMS - это имя таблицы, которая находится в моем локальном sql. Имя моего компьютера - itfg234. что я должен заменить для CMMS в этом запросе.Вставьте данные из одной таблицы в другую таблицу в моем локальном sql

SELECT * INTO CMMS 
FROM (
SELECT N'178670' AS [_IdxIdentity], N'E94E6A98-B71A-41ED-8B4B-F6472BA72ECD' AS [Contract_Other_DateBooked]) t; 

GO

ответ

0

Если таблица уже существует, то вы не можете использовать SELECT * INTO или вы получите ошибку

Существует уже объект с именем «CMMS» в базе данных.

SELECT INTO создает таблицу адресатов. Вместо этого используйте INSERT INTO dbo.CMMS ([column names]).

Запрос отрезан, так что я не могу увидеть весь подзапрос, но я упомяну только вы должны дать ему псевдоним или вы можете получить

Неправильный синтаксис около «)».

Если вы планируете запустить команду на исходном сервере я рекомендую вам создать его для запуска на целевом сервере и выберите из источника с помощью связанного сервера или OPENROWSET функцию. Легче извлекать данные, чем подталкивать их.

Надеюсь, это поможет.

+0

Спасибо @DBNull, я редактировал свой вопрос с помощью всего запроса, это только для 1 строки данных. Imagin для записи тысяч записей, как я могу преобразовать Select to, чтобы вставить? Затем я должен изменить весь формат, и это так просто. Знаете ли вы какой-нибудь простой способ? – nikta

+0

Nikta, я не понимал, что полный запрос содержит личные данные. Вы должны отредактировать его, чтобы удалить личные данные. – DBNull

+0

Что касается вопроса, то как SELECT INTO, так и INSERT INTO позволяют вставлять результаты запроса в таблицу. Как это так, 'INSERT INTO dbo.CMMS (Columna, columnB, columnC ...) SELECT, column1, COLUMN2, колонка3 ... ИЗ связанного сервера имени name.database name.dbo.source таблицы С (NOLOCK) ГДЕ Бла-бла-бла ' – DBNull

0

попробовать этот

CREATE TABLE new_table_name LIKE old_table_name; 
INSERT new_table_name SELECT * FROM old_table_name; 

надеюсь, что это одно вам помочь.