Форум: "Прочее";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
ВнизВыложил программку для генерации скриптов MS SQL Найти похожие ветки
← →
Kolan © (2008-04-14 15:07) [0]Может пригодится кому-нибудь…
http://www.ksoftware.ru/wiki/doku.php/ksqlserverscriptcreator
← →
Ega23 © (2008-04-14 15:08) [1]Что делает?
Где краткое описание?
← →
Kolan © (2008-04-14 15:18) [2]Описание
Часто вам нужно перекачать данные из одной базы данных в другую. Например, если вы заполнили справочник и хотите загрузить данные заказчикам. Проще всего сделать это с помощью скрипта. Для решения этой задачи и был создан KSQLServerScriptCreator.
← →
Kolan © (2008-04-14 15:18) [3]По ссылке вообще описание…
← →
Игорь Шевченко © (2008-04-14 15:22) [4]немаленькие у вас скрипты - 10 миллионов строк
← →
sniknik © (2008-04-14 15:24) [5]> .... строк изменино
?
> Проще всего сделать это с помощью скрипта.
бэкап в одном и ресторе в другом еще проще.
правда не выйдет из 2005 в 2000й, но тут ->
а чем не устроил визард в Enterprise Manager-е? для такого же скрипта.
← →
Kolan © (2008-04-14 15:25) [6]> немаленькие у вас скрипты — 10 миллионов строк
Это не скрипты, это rows affected. Кстати это неправда, глюк какой-то… :).
← →
Kolan © (2008-04-14 15:26) [7]> а чем не устроил визард в Enterprise Manager-е? для такого
> же скрипта.
А где он такой там?
← →
Anatoly Podgoretsky © (2008-04-14 15:28) [8]Смотри в сторону DTS и аналогичное в 2005
Это все уже написано и универсально.
← →
Ega23 © (2008-04-14 15:30) [9]
> Проще всего сделать это с помощью скрипта.
Ой не факт....
И как потом это дело грузить? isql до определённого размера файлы понимает, osql - это всё в юникоде делать надо, да и тормозные они.
← →
Ega23 © (2008-04-14 15:30) [10]
> Смотри в сторону DTS
А ДТС умеет сохранять в файл / читать из файла?
← →
sniknik © (2008-04-14 15:31) [11]да вот, когда DTS запускаешь то там гдето в процессе, записать скрипт
еще вот это посмотри
http://www.sqlmaestro.com/products/mssql/maestro/
← →
Kolan © (2008-04-14 15:31) [12]> Смотри в сторону DTS и аналогичное в 2005
Про ДТС знаю, не много, но пару раз пользовался. Довольно сложная штука (особенно УИ «крыше сносный» © кто-то из местных). Вроде скрипт попроще…
← →
Kolan © (2008-04-14 15:33) [13]> Ой не факт…
Не факт :).
> isql до определённого размера файлы понимает
Ну я думаю столько сколько не есть isql просто сгенерить не удасться, так как долго.
> еще вот это посмотри
Интересно. Посмотрю, но как минимум есть отличие:Order Now
.
← →
Anatoly Podgoretsky © (2008-04-14 16:11) [14]> Ega23 (14.04.2008 15:30:09) [9]
Что там с использованием isql? Ужас!
← →
Anatoly Podgoretsky © (2008-04-14 16:13) [15]> Ega23 (14.04.2008 15:30:10) [10]
Я ни когда не использовал всех его возможностей, но они большие, а на замену ему пришел еще более мощный инструмент, было бы желание его осваивать, а по моим задачам у меня желания нет. Легко стыкуется с любой системой программирования.
← →
Anatoly Podgoretsky © (2008-04-14 16:14) [16]> Kolan (14.04.2008 15:31:12) [12]
Не важно что сложная, для нее же можно писать любую обертку, например на Дельфи и вызывать оттуда же. А тут уже фантазия не ограничена. Но конечно нужны определенные усилия для освоения.
← →
Anatoly Podgoretsky © (2008-04-14 16:15) [17]> Kolan (14.04.2008 15:33:13) [13]
isql это очень старый инструмент, не юникодовый, а уже и устарел, на замену пришел новый, вроде название sqlcmd
← →
Kolan © (2008-04-14 16:19) [18]> Что там с использованием isql? Ужас!
Где у меня? Нет.
← →
MsGuns © (2008-04-14 16:41) [19]Не уразумел чем сабж лучше сервиса ентерпрайз-менеджера. Только там можно варьировать как таблицами, так и колонками. Да и вообще можно пакет на вызрузку-загрузку оформить запросами. И не только в мсскл.
Если дело только в том, чтобы запомнить пакет для дальнейшего использования, так читайте хелп в BOL - там хоть и несколько витиевато, но все написано
← →
Anatoly Podgoretsky © (2008-04-14 16:52) [20]> Kolan (14.04.2008 16:19:18) [18]
Не знаю, я реагирую на упоминание в обсуждение, ни isql, ни wisql использовать не надо, нет никакой нужды. Да и насчет qsql тоже стоит задуматься, пока еще можно, поскольку много 2000 серверов, но стоит смотреть или в сторону программного формирования пакетов или по крайней мере в сторону sqlcmd
← →
Kolan © (2008-04-14 17:10) [21]Не я там ничего такого не использую. Через ADO пользую служебные таблицы и все.
> Не уразумел чем сабж лучше сервиса ентерпрайз-менеджера.
Может точнее скажешь где смотреть? А то sniknik сказал, а я найти не могу.
← →
Fantasist.. (2008-04-14 19:08) [22]Ой как я не люблю русский интерфейс
← →
MsGuns © (2008-04-14 19:19) [23]>Kolan © (14.04.08 17:10) [21]
>Может точнее скажешь где смотреть? А то sniknik сказал, а я найти не могу.
BOL, Data Transform Service
← →
MsGuns © (2008-04-14 19:26) [24]Проинсталлил
Запустил, вылезло логин-окно. Подсунул первый имеющийся в списке программного комбобокса сервер...
После минутного зависания ответ на инглише об отсутствии сервера (а у меня дома его и нетути)
ИМХО, нехило б при старте опрашивать список доступных серверов
Пара вопросов (просьба не сердиться) :
1. что это за файл Histroy.txt ?
2. Отчего такой гигантский для подобного приложения размер экзешника ?
← →
DiamondShark © (2008-04-14 19:37) [25]Нет Windows Authentication.
Все строки зафигачить в литеральные INSERT -- это жосткий ахтунг.
Нет, я лучше по-старинке, bcp.
← →
Kolan © (2008-04-14 20:36) [26]> 1. что это за файл Histroy.txt ?
История открытых файлов.
> 2. Отчего такой гигантский для подобного приложения размер
> экзешника ?
Вроде обычный. На Delphi же делано…
> Все строки зафигачить в литеральные INSERT —— это жосткий
> ахтунг.
Литеральные — это в смысле большие? Тогда вопрос к MS. Такой у них стандарт.
> Нет Windows Authentication.
Согласен.
> Нет, я лучше по-старинке, bcp.
Что это? http://www.bcp.ru/ ?
> ИМХО, нехило б при старте опрашивать список доступных серверов
Так никто и не рассказал как это сделать.
Для поиска пользуюсьNetServerEnum
изnetapi32.dll
. А как узнать доступные — хз.
ЗЫ
>
> Пара вопросов (просьба не сердиться) :
Я не только не сержусь, я ещё все в баг трекер засуну.
← →
DiamondShark © (2008-04-14 21:27) [27]
> Kolan © (14.04.08 20:36) [26]
> Литеральные — это в смысле большие? Тогда вопрос к MS. Такой
> у них стандарт.
Литеральные -- это в смысле которые INSERT...VALUES
(литерал, если интересно -- это символьное выражение значения некоего типа)
Представь, если таблица из нескольких тысяч строк хотя бы.
Кстати, значения в литералы ты неправильно переводишь, и скрипт неправильно генеришь.
Для столбцов с типомuniqueidentifier
иbigint
ты пишешь в декларации столбцовuniqueidentifier(16)
иbigint(8)
. Это ошибка синтаксиса.
В качестве значений дляuniqueidentifier
ты пишешь{976FC650-A90C-428C-85E7-00029AE6DC23}
без ограничителей. Это ошибка синтаксиса. Надо в кавычках.
Для типаbit
ты пишешь в значенияхTrue
иFalse
. Это вообще не SQL.
Значения типаbinray
/varbinary
ты вообще никак не преобразуешь, так сырым бинарником и фигачишь в текст. Мало того, что текст синтаксически некорректный, так ещё и файл битый: в твой редактор он попадает до первого нуля. Соответсвенно, и сохраняется так же, огрызком.
> > Нет, я лучше по-старинке, bcp.
>
> Что это?
Это утилита такая из комплекта тулзов SQL Server для массового копирования (bulk copy) данных.
← →
DiamondShark © (2008-04-14 21:30) [28]
> Так никто и не рассказал как это сделать.
SQL-DMO
Application.ListAvailableSQLServers
← →
Kolan © (2008-04-14 21:54) [29]> Для столбцов с типом uniqueidentifier и bigint ты пишешь
> в декларации столбцов uniqueidentifier(16) и bigint(8).
> Это ошибка синтаксиса.
Да, согласен. Как унифицировано работать с типами я не нашел, поэтому вручную сделал соответствие (что-то типа таблицы). А так как я про эти типы незнал, то я их не проверил и они неправильно выгружаются.
> Для типа bit ты пишешь в значениях True и False. Это вообще
> не SQL.
Понял. Проверю.
> Значения типа binray/varbinary ты вообще никак
Угу, проверю.
> DMO
А это что? :)
← →
DiamondShark © (2008-04-15 01:27) [30]
> А так как я про эти типы незнал
Кстати, а текст у тебя получается юникодный? Ведь кроме char/varchar есть ещё nchar/nvarchar.
binray/varbinary лучше писать в виде hex-строки:
0x1234ABCD77FF1100
> > DMO
>
> А это что? :)
Distributed Management Objects.
COM-библиотека очень полезных объектов. В Дельфи можно импортировать библиотеку типов.
← →
XentaAbsenta (2008-04-15 14:36) [31]2 Kolan © (14.04.08 20:36) [26]
лучше сделай GUI обёртку над bcp, и быстрее, и правильнее, и ошибок меньше будет
← →
Kolan © (2008-04-15 14:41) [32]> лучше сделай GUI обёртку над bcp, и быстрее, и правильнее,
> и ошибок меньше будет
Все уже сделано и зарплата получана. :).
> библиотека очень полезных объектов
Ок, посомтрю.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.041 c