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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
naPmu3aH



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

Цитата:
Простите за глупый вопрос, а где взять новую?

Microsoft Data Access Components (MDAC).
Последняя версия - 2.8 [eng]

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

Всего записей: 4643 | Зарегистр. 30-10-2001 | Отправлено: 18:49 08-12-2003
zsv

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Мне нужно автоматически запускать сохраненную процедуру при старте сервера.
В книге по 7скл нашел процедуру sp_makestartup и sp_unmakestartup, но у меня на сервере (правда 2000) их нет и в хелпе они подсвечены, что их нет. Возможно вместо них в двушке что-то другое. Подскажите, как мне это сделать.

Всего записей: 25 | Зарегистр. 20-08-2003 | Отправлено: 10:03 24-12-2003
someone312002



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Сделать очень просто: настрой, чтобы SQLAgent у тебя стартовался автоматом при старте самого сервера, затем, идёшь к JOB'ам, создаёшь новую задачу, в Schedule ставишь "Start automatically when SQL Server Agent starts".
Всё.
 
УДАЧИ!!!

----------
"я не волшебник - я только учусь" (c)

Всего записей: 235 | Зарегистр. 19-08-2002 | Отправлено: 10:35 24-12-2003
zsv

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите
В сохраненной процедуре создаю курсор , потом его пробегаю делая необходимые мне вещи, потом уничтожаю курсор.
Параллельно на этом же сервере, но в др базе делаю обычный селект из таблички в десять записей. Выполняется примерно столько же времени, что и время начиная с открытия курсора до его уничтожения (у меня порядка 30 сек).
То ли ресурсы все зажираются на курсор, то ли что-то еще?
Что мне делать (вариант не использовать курсоры не подходит), может как-то ресурсы проца можно принудительно распределять по другому.
Подскажите

Всего записей: 25 | Зарегистр. 20-08-2003 | Отправлено: 16:35 25-12-2003
someone312002



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
dbcc тебе в помощь. упорядочить "записи" в сторед груп надобно, может в этом дело ?

Всего записей: 235 | Зарегистр. 19-08-2002 | Отправлено: 11:22 26-12-2003
zsv

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
По предыдущему вопросу о курсорах.
Надыбал параметр Cursor Threshold, установил в 0, как там написано для создания асинхронного немешающего другим запросам курсора. И все равно не помогло. Может на однопроцовом сервере этот параметр игнорируется?
Someone312002, я не совсем понял о том что ты написал, можно тебя попросить отозваться на асю 199089548 или 262612210 или на мыло zsv@hte.vl.net.ua.

Всего записей: 25 | Зарегистр. 20-08-2003 | Отправлено: 11:56 27-12-2003
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
zsv
Про автоматически стартуемые процедуры, если нет SQLAgent.
mk:@MSITStore:C:\Program%20Files\Microsoft%20SQL%20Server\80\Tools\Books\adminsql.chm::/ad_config_8aem.htm

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 22:22 28-12-2003
Megard

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите плз, как составить запрос, чтобы вывести записи, к примеру, с десятой по двадцатую. id записей использовать нельзя,  так как нумерация не сквозная.

Всего записей: 135 | Зарегистр. 13-09-2002 | Отправлено: 16:47 11-01-2004
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
declare @Page int
declare @PageSize   int
set @Page = 500
set @PageSize = 10
 
 
begin
   declare @RowsCount int
   declare @FirstSelectingRowNumber int
   declare @FirstSelectingRowId  int
   
   select @RowsCount = count(Id) from table1
   set @FirstSelectingRowNumber = (@Page - 1) * @PageSize + 1
     
   if (@FirstSelectingRowNumber <= @RowsCount)
      begin
         SET ROWCOUNT @FirstSelectingRowNumber
         SELECT @FirstSelectingRowId = id
         FROM table1
         ORDER BY 1
 
 
         SET ROWCOUNT @PageSize
         SELECT * FROM table1  
         WHERE id >= @FirstSelectingRowId  
         ORDER BY 1      
      end
end

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 21:43 12-01-2004
Delphist

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Значит проблема такая.
Есть заново поставленный сервак и бэкпап от базы.
Я делаю ресторе с него все ок.
В это время вместе с данными восстанавливается юзер владелец таблиц.
Вся проблема в том что я не могу ему дать логин к базе...
Т.е. захожу в Security в Entrprise и делаю новый логин, когда жму ок -
ошибка выходит - такой юзер уже существует.
Как такое лечить что сделать?

Всего записей: 114 | Зарегистр. 14-01-2003 | Отправлено: 12:18 13-01-2004
someone312002



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BOL и процедура sp_change_users_login тебе помогут в этом!!!

Всего записей: 235 | Зарегистр. 19-08-2002 | Отправлено: 12:41 13-01-2004
Delphist

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ЁЁЁ запахало!
Бооольшое спасибо...
!!!!

Всего записей: 114 | Зарегистр. 14-01-2003 | Отправлено: 13:11 13-01-2004
Megard

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

Цитата:
Подскажите плз, как составить запрос, чтобы вывести записи, к примеру, с десятой по двадцатую. id записей использовать нельзя,  так как нумерация не сквозная.  

Дополнение: не используя хранимых процедур. Нужен просто SQL-запрос.

Всего записей: 135 | Зарегистр. 13-09-2002 | Отправлено: 20:32 13-01-2004
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Megard
Ну если очень надо, то например вот так:
select top n *
from (select top m *  
from table1 order by id asc) as t order by id desc
 
n - кол-во записей на страницу
m - n*номер требуемой страницы. (Если n=5, то для 10-ой страницы m=50)
поле id - ключ, не обязательно правильно упорядоченный
 
данный запрос имеет 2 недостатка:
1. Текст запроса всегда надо формировать динамически.
2. Немного подтормаживает для больших таблиц и последних номеров страниц

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 21:16 13-01-2004
someone312002



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Megard, zenant, Объясните мне - тупоголовому: в каких случаях может понадобится подобный запрос ? Перебирал варианты - ничего на ум не пришло...
 
2Модераторс - сори за оффтоп...

Всего записей: 235 | Зарегистр. 19-08-2002 | Отправлено: 09:27 14-01-2004
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Он нужен в любом веб-приложении для постраничного ввывода результатов запроса.

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 09:33 14-01-2004
someone312002



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Тогда объясни, почему ТОЛЬКО запрос... Хотя, это обсуждение можно перевести и на другие рельсы - мою асю ты видишь - заходи...

Всего записей: 235 | Зарегистр. 19-08-2002 | Отправлено: 09:37 14-01-2004
zenant



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Это не ко мне.. Человек хотел запрос - пожалуйста запрос, хотел эфффективную процедуру - пожалуйста процедуру.

Всего записей: 194 | Зарегистр. 01-09-2002 | Отправлено: 11:55 14-01-2004
Megard

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

Цитата:
Megard, zenant, Объясните мне - тупоголовому: в каких случаях может понадобится подобный запрос ? Перебирал варианты - ничего на ум не пришло...

 
Объясняю:
Запрос делается из php. Результат сохранняется в виде массива. Короче говоря, из-за того, что таблица очень большая, получается очень большой массив.  
 
Добавлено
2 zenant:
Спасибо, сам я не сообразил.

Всего записей: 135 | Зарегистр. 13-09-2002 | Отправлено: 17:21 15-01-2004
zsv

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Разьясните пожалуйста, в чем тут фишка.
Запрос в аналайзере типа
insert into ...
    select ... from (select ... from ... inner join ... where ... ) e
    union
    select ... from (select ... from ... inner join ... where ... ) e
    where ...
(подробности пропустил дабы место сэкономить) выполняется 1.2 мин.
Переношу его ничего не меняя в тело сохр процедуры (там уже есть довольно много запросов, этот становиться последним)  и конца процедуры я не дожидаюсь...
Входные данные для этого запроса эдентичные в обоих вариантах выполнения.
Может дело в каких-то блокировках или в каких-то открытых транзакциях, я просто ума не приложу в каком направлении копать.

Всего записей: 25 | Зарегистр. 20-08-2003 | Отправлено: 20:04 15-01-2004
Открыть новую тему     Написать ответ в эту тему

Страницы: 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