Инструмент для экспорта набора результатов от SQL до операторов Insert?

У меня был сценарий, и этот помог мне

JObject objParserd = JObject .Parse (jsonString);

JObject arrayObject1 = (JObject) objParserd ["d"];

D myOutput = JsonConvert .DeserializeObject <D> (arrayObject1.ToString ());

16
задан Abdu 15 June 2009 в 19:51
поделиться

7 ответов

обратите внимание на надстройку SSMS Tools Pack для SSMS, которая позволяет делать именно то, что вам нужно.

11
ответ дан 30 November 2019 в 16:42
поделиться

WinSQL на сайте www.synametrics.com имеет эту функцию, и она очень удобна. Не уверен, есть ли эта функция в бесплатной версии, но вы все равно можете попробовать версию Professional в течение 30 дней.

Это очень удобный и простой в использовании инструмент запросов для любой базы данных, подключенной к ODBC.

1
ответ дан 30 November 2019 в 16:42
поделиться

Я знаю, что это не совсем то, что вы ищете, но вы можете выполнить вставку из оператора select:

INSERT INTO tbl (a, b) ВЫБЕРИТЕ c, d FROM tbl2 WHERE c IN (...)

Очевидно, это довольно грубо, но я надеюсь, что в этом суть того, что я пытаюсь изложить.

2
ответ дан 30 November 2019 в 16:42
поделиться

Squirrel SQL также может это делать.

Напишите запрос SQL, выполните его для проверки. Затем выделите его и выберите Script / Insert statement (не помните точную формулировку).

2
ответ дан 30 November 2019 в 16:42
поделиться

TOAD может сделать это из меню «Сохранить как» сетки данных.

1
ответ дан 30 November 2019 в 16:42
поделиться

Лично я просто написал бы выборку для таблицы и сам сгенерировал бы вставки. Кусок торта.

Например:

SELECT  'insert into [pubs].[dbo].[authors](
                    [au_id], 
                    [au_lname], 
                    [au_fname], 
                    [phone], 
                    [address], 
                    [city], 
                    [state], 
                    [zip], 
                    [contract])
    values( ''' + 
    [au_id] + ''', ''' + 
    [au_lname] + ''', ''' +
    [au_fname] + ''', ''' +
    [phone] + ''', ''' +
    [address] + ''', ''' +
    [city] + ''', ''' +
    [state] + ''', ''' +
    [zip] + ''', ' +
    cast([contract] as nvarchar) + ');'
FROM    [pubs].[dbo].[authors]

даст

insert into [pubs].[dbo].[authors](
                    [au_id], 
                    [au_lname], 
                    [au_fname], 
                    [phone], 
                    [address], 
                    [city], 
                    [state], 
                    [zip], 
                    [contract])
    values( '172-32-1176', 'White', 'Johnson', '408 496-7223', '10932 Bigge Rd.', 'Menlo Park', 'CA', '94025', 1);
insert into [pubs].[dbo].[authors](
                    [au_id], 
                    [au_lname], 
                    [au_fname], 
                    [phone], 
                    [address], 
                    [city], 
                    [state], 
                    [zip], 
                    [contract])
    values( '213-46-8915', 'Green', 'Marjorie', '415 986-7020', '309 63rd St. #411', 'Oakland', 'CA', '94618', 1);
... etc ...

Пара ловушек:

  1. Не забудьте завернуть свой сингл цитаты
  2. Это предполагает чистую базу данных и не является безопасным для внедрения SQL.
13
ответ дан 30 November 2019 в 16:42
поделиться

Я написал сценарий для этой проблемы, который должен работать на любой таблице. (Я говорю «должен», потому что сценарий не протестирован на 100% и все еще немного груб.) Вы можете найти его по адресу http://www.jessemclain.com/downloads/code/sql/spd_Tool_Get_Insert_Into_Values.sql .txt

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

ПРИМЕЧАНИЕ: текстовый файл, который я опубликовал, нормально отображается в Firefox 3.0.11, но не в IE7.

0
ответ дан 30 November 2019 в 16:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: