powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Автоматическое формирование запросов по содержимому таблицы ?
9 сообщений из 9, страница 1 из 1
Автоматическое формирование запросов по содержимому таблицы ?
    #32014596
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно-ли по содержимому таблицы создать скрипт занесения (обновления ?) записей
например есть таблица, запрос SELECT * FROM Table
выдает

ID
-----
1
3
45
3

Необходимо получить набор запросов что-то типа
INSERT INTO Table (ID) VALUES (1)
GO
INSERT INTO Table (ID) VALUES (3)
GO
INSERT INTO Table (ID) VALUES (45)
GO
INSERT INTO Table (ID) VALUES (3)

или чтото подобное, а главное автоматически


GO
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014599
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напиши мне на мыло GreenSunrise@mail.ru
У меня есть такой скрипт. Не лишен недостатков
, но вполне рабочий.
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014637
Fompro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В PowerBuilder есть Export в T-SQL
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014657
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смотря какие запросы нужны.
можно и так: insert Need_Table_Name (ID,...) select ID,... from Table_Name
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014689
Pandre
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что вы человека мучаете, все же просто

select 'INSERT INTO Table (ID) VALUES ('+cast(ID as varchar)+')'+char(13)+'GO' from Table

и т.д.
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014699
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pandre, а ты не задумывался о:
- типах данных, которые напрямую к varchar не приводятся
- юникоде
- поле datetime, которое во избежание ошибок при переносе с одного сервера на другой лучше писать с явным convert'ом
- text/ntext
- значениях NULL
- желательном явном перечислении полей, чтобы опять-таки легче было переносить на другой сервак и не иметь траблы из-за того, что там порядок полей немного отличается
- многом другом...
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014701
Tarantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у меня есть программа для генерации подобных скриптов
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014702
Pandre
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 GreenSunrise
Об этом я конечно задумывался. Но, как я понял, автоматически автор вопроса хотел генерить текст на Insert, а не сам скрипт по его созданию.
Кстати, ты не задумался, что еще бывают и поля Image, или они тоже у тебя формируются ?
...
Рейтинг: 0 / 0
Автоматическое формирование запросов по содержимому таблицы ?
    #32014706
GreenSunrise
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Pandre: насколько я понимаю, речь шла о процедуре, которой даешь на вход имя таблицы, а на выходе печатается пачка инсертов. Это в простейшем случае. Вот об этой процедуре я и говорю - сформировать строку insert into table1 (col1, col2) values (...) не так просто, как тебе кажется. Именно потому, что ... в скобках может выглядеть по-разному
- 'aaaa'
- N'aaaa'
- 123
- 123.456546
- 0x56546456
- дата/время в формате, отличном от текущего на сервере

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

Моя процедура корректно работает со всеми типами данных (в том числе и пользовательскими), кроме image и binary. varbinary обрабатывается нормально. Разумеется, отсекает строку за пределами 8000 байт - это ограничения сиквела на локальную переменную. Всего процедурку у меня ее брали человек 6, пока никто не жаловался. Конечно, может быть, никто из них не пользовался ею
Если кто пришлет замечания, то это только приветствуется.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Автоматическое формирование запросов по содержимому таблицы ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]