Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Microsoft SQL Server

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55

Открыть новую тему     Написать ответ в эту тему

Megard

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MICROSOFT SQL SERVER
 
тема посвящена выяснению ответов на вопросы, касающихся установки, функционирования и использования Microsoft SQL Server; также обсуждаются вопросы, касающиеся использования T-SQL (диалект SQL-языка, используемого в этой версии сервера)
 
популярные ответы на популярные вопросы "где скачать?" и "чем сломать?" можно найти здесь

 
 
Официальная документация:
SQL Server 2005 Books Online (original/english, 135MB, september 2007);
SQL Server 2005 Books Online (перевод/русский, 148MB, январь 2009);
 
 
Официальные обновления:
[для версий, начиная с 9.0.3042] / [полный перечень обновлений / зеркало]
03/06/2007: KB933508 (9.0.3042 > 9.0.3050);
04/03/2007: KB934458 (9.0.3050 > 9.0.3054);
04/03/2007: KB934459 (9.0.3054 > 9.0.3159);
06/28/2007: KB936305 (9.0.3159 > 9.0.3175);
 
 
Альтернативные источники информации:
sql.ru - очень полезный ресурс с говорящим за себя названием; пожалуй, лучший (если не единственный) на просторах ru'нета; кроме форумов есть большая подборка статей, FAQ, и прочее.

Всего записей: 135 | Зарегистр. 13-09-2002 | Отправлено: 11:49 18-07-2003 | Исправлено: niichavo, 16:13 02-04-2010
Pantalone



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Встала необходимость заменить таблицы с русскоязычными названиями на англоязычные, при этом чтобы осталась возможность видеть эти таблицы под старыми русскоязычными названиями посредством вьюшек.
Фигня в том что все остальные объекты, которые ссылались по Depends на старые таблицы потеряли эти ссылки и на вьюшки естественно уже не ссылаются. Это не есть гуд. Как бы поправить положение?
Пересоздать все кроме таблиц скриптом не очень подходит, муторно отслеживать что в каком порядке за чем должно быть восстановлено. Есть ли какой другой вариант действий?

Всего записей: 728 | Зарегистр. 16-02-2004 | Отправлено: 11:50 16-08-2005
SergeBS



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Dim2004

Цитата:
 
 Найти специалиста. Задача перехода с одной версии сервера на другую его версию требует примерно того же уровня знаний, что и разработка с нуля. Если же в наличии имеются приложения, доступа к исходникам которых нет, - идею смены версии сервера нужно просто похоронить на корню.
 
Всё вышесказанное - личный опыт, хоть и не с M$SQL.  

Отмазался последней строчкой .  Но не убедительно. И вдобавок неверно. Поскольку мой личный опыт такой:  
 
Ситуация 1.
База данных - MS SQL 7. Куча ХП, вьюшек, немного триггеров. С ней работает приложение (на Дельфи через АДО).  
 
Ситуация 2.  
База как есть впихивается (даже не backup/restore, а просто db_attach) в MS SQL 2000. (да, я ленивый, и что? кто не ленивый пусть кинет в этот текст камень. Монитор - вдребезги ).
Сервак при впихивании вопит, что перевел данные в современный формат и все ОК-ОБ.
Запускается приложение БЕЗ ПЕРЕДЕЛОК (как был exe-шник, так и остался). Работает.
Прикола ради я это приложение переключал между 7 и 2000 серваками (там файлик настройки есть - какой сервер(имя) юзать и какую базу(имя)) - А ЕМУ ПОФИГ.  
 

Цитата:
 
 Может нужно попробовать переносить так 6.5->7->2000.  
 
Зачем эта двойная работа?
 

Именно затем, что на следующую версию с предыдущей сервак перейдет не поперхнувшись. В него это заложено.
А вот скачок через версию - вполне грозит гимором. Это тебе не WinXP поверх 95 ставить.
 
zeleniy
Присоединяюсь к мнению твоего разработчика. Именно муторно, но надежно.
И при каждой операции перед перекачиванием на всякий случай прочитать раздел:
Переход с предыдущей версии. У MS он так и зовется (по-аглицки).
 
Добавлено:
Pantalone
А ты случайно не с Акцесса на сервак переехать пытаешься? Подробнее изложи - откуда куда. В этом - главное.

Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 17:56 16-08-2005
Dim2004

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SergeBS

Цитата:
Отмазался последней строчкой

Умение отмазываться - неотъемлемое качество приличного программиста .
 

Цитата:
Поскольку мой личный опыт такой

Ну... личный опыт - он разный бывает. Я, например, налетал на такие случаи, когда в сервере версии N+1 то, что работало в версии N, не работает - изменился синтаксис в сторону ужесточения. Или Query Parser версии N пропускал мелкие синтаксические ошибки, в версии N+1 он их начал ловить с понятным результатом. Так что, как говорится, люди, будьте бдительны .

Всего записей: 222 | Зарегистр. 11-05-2004 | Отправлено: 17:28 17-08-2005
zorrack



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос: есть ли способ перенести базу данных с SQL Server 2005 CTP на SQL Server 2000?
Нужно перенести базу as-is, без отдельного создания структуры и копирования/вставки данных, а, к примеру, как между 7.0 и 2000 при помощи 2000-ного Enterprise Manager с копированием объектов из одной базы в другую

Всего записей: 244 | Зарегистр. 16-05-2003 | Отправлено: 21:51 17-08-2005
SergeBS



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zorrack

Цитата:
как между 7.0 и 2000 при помощи 2000-ного Enterprise Manager с копированием объектов из одной базы в другую.
 

Не понял, что за способ. Поподробнее.

Цитата:
есть ли способ перенести базу данных с SQL Server 2005 CTP на SQL Server 2000?
Нужно перенести базу as-is, без отдельного создания структуры и копирования/вставки данных

Опять непонятно. Тебе нужно перенести данные или нет? Если нет, т.е. нужна только структура, то все просто до банальности: скрипт создания всей базы. Пытаешься его скормить 2000-му, что не ест - правишь ручками. Но скорее всего все съест.

Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 14:47 19-08-2005
zorrack



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Не понял, что за способ. Поподробнее.  

В Enterprise Manager есть три возможности для експорта данных:
1. Copy table(s) and view(s) from source database
2. Use a query to specify data to transfer
3. Copy objects and data between SQL Server databases
 
Вот мне надо было аналог 3-го: т.е. полностью скопировать базу вместе с данными.
Цитата:
скрипт создания всей базы


Цитата:
без отдельного создания структуры и копирования/вставки данных  

Как я уже написал, нужно провести трансфер базы. Т.е. чтобы не пришлось сначала создавать структуру (скриптом или нет), а потом при помощи опции (1) копировать данные.

Всего записей: 244 | Зарегистр. 16-05-2003 | Отправлено: 18:40 19-08-2005
matt

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
 
Есть 4 связанные таблицы:
t1<->t2<->t3<->t4
Все отношения 1:М (1 в t1: М в t2 и т.д). Можно ли одним SQL-запросом удалить все связанные записи из таблиц, удовлетворяющие условию, накладываемому на t4?
 
Спасибо!

Всего записей: 176 | Зарегистр. 28-11-2003 | Отправлено: 14:28 22-08-2005
SergeBS



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zorrack

Цитата:
Как я уже написал, нужно провести трансфер базы. Т.е. чтобы не пришлось сначала создавать структуру (скриптом или нет), а потом при помощи опции (1) копировать данные.

Такого я не делал. Специально когда была возможность выбрал 7.0, чтобы не было такой мороки.
А тебе видимо предстоит разбираться в  
SQL Server Backward Compatibility Details.
И в первую очередь
sp_dbcmptlevel (T-SQL)
Sets certain database behaviors to be compatible with the specified earlier version of Microsoft® SQL Server™.
- загнать в совместимый уровень базу. Затем - навскидку вижу 4 варианта:
1. младшим сервером пытаться импортировать.  
2. В лоб попробовать (sp_attach_db) - может и прокатит.
3. Через промежуточный формат (экспорт в XML или CSV, например или что еще), а затем импорт.
4. Если передыдущее не сработает - почти ручками (т.е. вначале структура, затем через ADO например - в нужном порядке набить таблицы одной базы данными из другой) - это уж на крайняк.
 
Мне это даже интересно, но не настолько чтобы самому пытаться - мремени как всегда мало, а сделать надо много.
 
matt

Цитата:
Можно ли одним SQL-запросом удалить все связанные записи из таблиц, удовлетворяющие условию, накладываемому на t4?  

 
Можно. Каскадное удаление. Не забудь rollback в нужных местах. Чтобы мастера-"сироты" не появились.
 
Добавлено:
Dim2004

Цитата:
Query Parser версии N пропускал мелкие синтаксические ошибки, в версии N+1 он их начал ловить с понятным результатом.

Слушай, а примерчик мне например в ПМ не кинешь. Какой сервер и как поборолось.
На будущее может пригодиться. Меня усиленно в сторону MySQL гонят - типа "бесплатно и круто". А версии у него меняются лихо.

Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 16:30 22-08-2005
matt

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Каскадное удаление

можно чуть по-подробнее?.. Хотя бы один примерчик или ссылочку где почитать.

Всего записей: 176 | Зарегистр. 28-11-2003 | Отправлено: 10:28 24-08-2005
daw

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
можно чуть по-подробнее?.. Хотя бы один примерчик или ссылочку где почитать.

почитать, как обычно, в BOL (эт хелп по MSSQL, если не в курсе...): Cascading Referential Integrity Constraints
а так: в дизайне таблиц для соответствующих связей прочекать Cascade Delete Related Records, а потом удалять из t1 чем-нибудь вроде этого:

Код:
 
delete from t1
from t1
  inner join t2 on
  ...
  inner join t3 on
  ...
  inner join t4 on
  ...
where
  t4.myfield = ...
 

правда, таким способом можно поубивать заметно больше записей, чем хотелось...
другой способ - писать триггеры на t4, t3, t2, которые будут чистить записи в родительских таблицах, оставшиеся без детей...

Всего записей: 28 | Зарегистр. 18-06-2002 | Отправлено: 08:25 25-08-2005 | Исправлено: daw, 08:37 25-08-2005
matt

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
daw
спасибо, будем пробовать

Всего записей: 176 | Зарегистр. 28-11-2003 | Отправлено: 09:35 25-08-2005
SergeBS



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
matt
Ну вот например, gitel - жители, gitel_doh - доходы конкретных жителей ( у 1 может быть их много, а может - ни одного). Удаляем жителя с gitel_id = del_gitel_id и все его доходы. Out0 > 0 - была ошибка (откат)
 

Цитата:
 
Create Procedure del_gitel
@del_gitel_id int,
@out0 int out
As
begin tran
  delete from gitel_doh where gitel_id = @del_gitel_id
  if @@error != 0
  begin
    rollback tran
set @out0 = 1
return @out0
  end
  delete from gitel where gitel_id = @del_gitel_id
  if @@error != 0
  begin
    rollback tran
set @out0 = 2
return @out0
  end
set @out0 = 0
commit tran
 
 


Всего записей: 272 | Зарегистр. 19-04-2005 | Отправлено: 17:51 30-08-2005
VitK



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, ПЛЗ, можно ли побороть такой трабл...
 
Выкачал в осле дистрибутив Microsoft SQL Server Ent 2005, но оказалось, что в архиве поврежден файл Microsoft .Net Framework 2.0 beta 2.  
Я взял и установил Microsoft .Net Framework 2.0 Release. Но инсталлятор SQL Server Ent 2005, ругается, что мол не тот пакет установлен, надо Framework 2.0 beta 2 и отказывается ставиться...
 
Можно ли заставить установиться Microsoft SQL Server Ent 2005 с Microsoft .Net Framework 2.0 Release? И как это сделать?

Всего записей: 2492 | Зарегистр. 16-01-2003 | Отправлено: 22:17 07-11-2005
XMMS



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VitK
А подсунуть Microsoft .Net Framework 2.0 Release вместо Microsoft .Net Framework 2.0 beta 2 не пробовал? Файлы поменять к примеру.. (только бэкап сделай)

----------
На войне. С самим собой.

Всего записей: 2603 | Зарегистр. 14-01-2003 | Отправлено: 23:01 07-11-2005
naPmu3aH



Из лесу вышел
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VitK

Цитата:
Но инсталлятор SQL Server Ent 2005, ругается, что мол не тот пакет установлен, надо Framework 2.0 beta 2

А зачем тебе оно?  
Это же явно SQL Server 2005 Beta 2 или CTP. Проще скачать релиз.

----------
Ну і хто тебе кликав, чому ти прийшла, Стара проститутка, сука-війна? Хто тобі платить за наші тіла? Скільки ще тобі треба, яка їх ціна?

Всего записей: 4642 | Зарегистр. 30-10-2001 | Отправлено: 23:20 07-11-2005
VitK



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
XMMS

Цитата:
А подсунуть Microsoft .Net Framework 2.0 Release вместо Microsoft .Net Framework 2.0 beta 2 не пробовал?

 
Конечно пробовал. Но проблема была в том, что в дистрибутиве Microsoft .Net Framework 2.0 beta 2 был запорчен самый большой по размеру файл с расширением msi и потому когда его подменял на аналогичный из релиза, то результат был тот же...
 
naPmu3aH

Цитата:
Это же явно SQL Server 2005 Beta 2 или CTP. Проще скачать релиз.

 
Так и качал у китайцев по надписи РЕЛИЗ! А дистрибутив оказался СТР, правда не знаю что эта абревиатура обозначает...
 
Теперь, конечно буду искать релиз...
 

Всего записей: 2492 | Зарегистр. 16-01-2003 | Отправлено: 09:26 08-11-2005
zharik_jr

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребят у меня следующая проблема. На моем компьютере стоит windows 2000 professional. Система старая ей около двух лет, за это время я неоднакратно ставил и сносил с нее разные версиии MS SQL Server. Теперь не ставитьсся сервер вообще ошибка вылетает при попытке его запустить во время установки (то есть инсталер сам его запускает и конфигурирует и вылетает ошибка). Ошибка следующая:
[Microsoft][ODBC SQL Server Driver][DBNETLIB]Общий сбой сети. Обратитесь к документации по сети.    
Подскажите пжста что делать, жуть неохото ситсему переустанавливать.

Всего записей: 66 | Зарегистр. 18-11-2004 | Отправлено: 10:14 08-11-2005
EZH



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VitK

Цитата:
дистрибутив оказался СТР, правда не знаю что эта абревиатура обозначает...  

Community Technology Preview

Всего записей: 1738 | Зарегистр. 02-09-2004 | Отправлено: 11:08 08-11-2005
VitK



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Community Technology Preview

 
А если своими словами чтобы понятно было?

Всего записей: 2492 | Зарегистр. 16-01-2003 | Отправлено: 16:41 08-11-2005
EZH



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
VitK
Версия для комьюнити разработчиков, предназначена для предварительного ознакомления с технологией. Обычно имеет максимум текущей функциональности технологии, но отличается от бет тем, что не предусмотрена никакая поддержка пользователей, а также отсутствие поддержки продукта при обновлении на более новые версии.

Всего записей: 1738 | Зарегистр. 02-09-2004 | Отправлено: 20:54 08-11-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Microsoft SQL Server


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru