Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];

Вниз

Выложил программку для генерации скриптов 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.041 c
2-1210440929
Прогмэн
2008-05-10 21:35
2008.06.01
Как узнать средствами Дельфи об антивирусах


4-1189838020
Nikfel
2007-09-15 10:33
2008.06.01
Как убрать рамку окна.


15-1208867243
i
2008-04-22 16:27
2008.06.01
Скорость билда проекта


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


2-1210532398
Jeqa
2008-05-11 22:59
2008.06.01
ДАТА





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский