Using OpenQuery With INSERT INTO Statement

43,696

Solution 1

I believe the syntax is:

TRUNCATE TABLE mytable

INSERT INTO mytable (firstcolumn, secondcolumn)
SELECT firstcolumn, secondcolumn 
FROM OPENQUERY (mylinkedserver, 'SELECT firstcolumn, secondcolumn FROM linkedtable')

Solution 2

Did you try:

INSERT INTO mytable(firstcolumn, secondcolumn)
  SELECT firstcolumn, secondcolumn
  FROM OPENQUERY
  (
    mylinkedserver, 
    'SELECT firstcolumn, secondcolumn FROM linkedtable'
  );
Share:
43,696
Lloyd Banks
Author by

Lloyd Banks

Updated on August 14, 2020

Comments

  • Lloyd Banks
    Lloyd Banks almost 4 years

    I currently use the following to data warehouse a table everday:

    DROP TABLE mytable 
    
    SELECT firstcolumn, secondcolumn INTO mytable
    FROM OPENQUERY (mylinkedserver, 'SELECT firstcolumn, secondcolumn FROM linkedtable')
    

    I would like to start using TRUNCATE going forward (to perserve system resources and indexes):

    TRUNCATE TABLE mytable
    
    INSERT INTO mytable (firstcolumn, secondcolumn)
    ?
    

    How do I use OpenQuery with the INSERT INTO statement?

  • Lloyd Banks
    Lloyd Banks almost 12 years
    I ended up using SELECT * FROM OPENQUERY (mylinkedserver, 'SELECT firstcolumn, secondcolumn FROM linkedtable')