Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.06.01;
Скачать: CL | DM;

Вниз

Выложил программку для генерации скриптов MS SQL   Найти похожие ветки 

 
Kolan ©   (2008-04-14 15:07) [0]

Может пригодится кому-нибудь&#133
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]

По ссылке вообще описание&#133


 
Игорь Шевченко ©   (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. Кстати это неправда, глюк какой-то&#133 :).


 
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

Про ДТС знаю, не много, но пару раз пользовался. Довольно сложная штука (особенно УИ «крыше сносный» © кто-то из местных). Вроде скрипт попроще&#133


 
Kolan ©   (2008-04-14 15:33) [13]

> Ой не факт&#133

Не факт :).


> 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 же делано&#133


> Все строки зафигачить в литеральные 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;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.022 c
2-1209816843
x-man
2008-05-03 16:14
2008.06.01
Перечисления


2-1209994985
Zoom
2008-05-05 17:43
2008.06.01
Pointer в адрес?


15-1208484670
Wood
2008-04-18 06:11
2008.06.01
Не могу достать палитру компонентов!


2-1209888831
Dmitry_177
2008-05-04 12:13
2008.06.01
ADO + Access


15-1208288161
ProgRAMmer Dimonych
2008-04-15 23:36
2008.06.01
Книги по поиску и индексации