Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Дата + Дата в analizer, :( 
:(
    Опции темы
adamant
  Дата 8.5.2006, 01:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



написал на php теперь надо на sql smile
Код

$sql = mssq_query("SELECT bloc_count,bloc_date,autounblock from MEMB_INFO where bloc_code = 1 and mail_chek = 1");
$row = mssql_fetch_row( $sql );
$outmydate = strtotime($row[3]);
$dayadd = $row[2]*7;
        if ($row[6] == '1')
    {
         $unblockdate  = mktime(0,0,0,date("m",$outmydate),date("d",$outmydate)+$dayadd,date("Y",$outmydate));
         echo date("d.m.Y", $unblockdate);
     }

но суть прогрвммы на mssql такая:
1. загрузить данные
2. получить текущую дату
3. если дата совпадает с date("d.m.Y", $unblockdate); то сделать Update значения в DB...

помогите пожалуйста. как это изобразить на SQL...  smile  smile 
PM MAIL ICQ   Вверх
boevik
Дата 8.5.2006, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

Репутация: 15
Всего: 35



Чего сделать то надо? 


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
adamant
Дата 8.5.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



$outmydate = strtotime($row[3]);    
$dayadd = $row[2]*7;    
$unblockdate  = mktime(0,0,0,date("m",$outmydate),date("d",$outmydate)+$dayadd,date("Y",$outmydate));
        if (date(D.M.Y, $unblockdate) == date(D.M.Y))    
    {    
         UPDATE memb_info SET bloc_code=0, autounblock=0 unban=0 WHERE bloc_code =1
}

токо на sql 
PM MAIL ICQ   Вверх
Vit
Дата 8.5.2006, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 5
Всего: 207



Цитата(adamant @  7.5.2006,  16:42 Найти цитируемый пост)
1. загрузить данные


В контексте самого MS SQL Server абсолютно не понятный термин, нет такого понятия как "загрузить данные" для MS SQL Server, наверное вы имеете ввиду заргрузку данных на клиентское приложение - тогда спрашивайте в разделе по какомц-то языку...

Цитата(adamant @  7.5.2006,  16:42 Найти цитируемый пост)
2. получить текущую дату


Функция GetDate() возвращает текущую дату

Цитата(adamant @  7.5.2006,  16:42 Найти цитируемый пост)
. если дата совпадает с date("d.m.Y", $unblockdate); то сделать Update значения в DB...


Код

If Trunc(YourDate)=Trunc(GetDate())
  Begin
    UPDATE memb_info SET bloc_code=0, autounblock=0 unban=0 WHERE bloc_code =1

  End
 


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
adamant
Дата 9.5.2006, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



оооо.... СПАСИБО ОГРОМНОЕЕ! 
Цитата

Цитата(adamant @  7.5.2006,  16:42 )    
1. загрузить данные    


В контексте самого MS SQL Server абсолютно не понятный термин, нет такого понятия как "загрузить данные" для MS SQL Server, наверное вы имеете ввиду заргрузку данных на клиентское приложение - тогда спрашивайте в разделе по какомц-то языку...


Да нет...
Вот это:
SELECT bloc_count,bloc_date,autounblock from MEMB_INFO where bloc_code = 1 and mail_chek = 1
Ну так и будет же??? 
PM MAIL ICQ   Вверх
adamant
Дата 9.5.2006, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



Код

If Trunc(YourDate)=Trunc(GetDate())    
  Begin    
    UPDATE memb_info SET bloc_code=0, autounblock=0 unban=0 WHERE bloc_code =1    
  End

Ошибка: 
Server: Msg 195, Level 15, State 10, Line 1
'Trunc' is not a recognized function name.
smile pls напиши пример на sql вот этого:
Код

$sql = mssq_query("SELECT bloc_count,bloc_date,autounblock from MEMB_INFO where bloc_code = 1 and mail_chek = 1");    
$row = mssql_fetch_row( $sql );    
$outmydate = strtotime($row[3]);    
$dayadd = $row[2]*7;    
        if ($row[6] == '1')    
    {    
         $unblockdate  = mktime(0,0,0,date("m",$outmydate),date("d",$outmydate)+$dayadd,date("Y",$outmydate));    
         echo date("d.m.Y", $unblockdate);    
     }

А то лит-ры нет под рукой а хочеться пример посмотреть, да и потом проще учиться на примерах...

 
PM MAIL ICQ   Вверх
Vit
Дата 10.5.2006, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 5
Всего: 207



Я на PHP не программирую, можно словами описать логику? 


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
adamant
Дата 10.5.2006, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



конечно можно! 
1. создаёться запрос в базу данных: SELECT bloc_count,bloc_date,autounblock from MEMB_INFO where bloc_code = 1 and mail_chek = 1

2. Если "autounblock" = 1, то получить текущюю дату и сравнить с (bloc_date)...
3. Если bloc_date = Getdate() то:  UPDATE memb_info SET bloc_code=0, autounblock=0 unban=0 WHERE bloc_code =1 


 
PM MAIL ICQ   Вверх
boevik
Дата 10.5.2006, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

Репутация: 15
Всего: 35



Все намного проще:
Код

UPDATE memb_info 
SET bloc_code=0, autounblock=0 unban=0 
WHERE bloc_code =1  and bloc_date = Getdate() 

 


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Vit
Дата 10.5.2006, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 5
Всего: 207



Код

UPDATE memb_info 
SET bloc_code=0, autounblock=0 unban=0 
WHERE 
  bloc_code =1 and 
  mail_chek = 1 and
  autounblock= 1 and 
  trunc(cast(bloc_date as float))=trunc(cast(GetDate() as float))

   


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
boevik
Дата 10.5.2006, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

Репутация: 15
Всего: 35



Vit, что за функция trunc? 
Или же имелась ввиду floor (взять целую часть)? 

Это сообщение отредактировал(а) boevik - 10.5.2006, 17:56


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
Vit
Дата 10.5.2006, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 5
Всего: 207



Цитата(boevik @  10.5.2006,  08:52 Найти цитируемый пост)
Vit, что за функция trunc? 
Или же имелась ввиду floor (взять целую часть)? 



Воистину так... вот что значит когда несколькими языками голова забита...  smile  


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
adamant
Дата 10.5.2006, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 50
Регистрация: 1.3.2006
Где: Москва

Репутация: нет
Всего: нет



Спасибки всем smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS SQL Server | Следующая тема »


 




[ Время генерации скрипта: 0.0611 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.