게시판 본문 ASP, ASP.NET, IIS & Script - Read Only
re: 어렵게 찾아 온 곳입니다. 답변 좀 부탁 드립니다. |
---|
작성자: 송원석
작성일시: 2004-05-19 11:54,
조회수: 3,224
|
안녕하세요? 송원석입니다. ^_^
먼저 첫 번째 말씀하신 문제에 관해서는 제가 알기로는 단번에 해결할 수 있는 방법은 없습니다. 물론 안된다는 말이 아니라 함수 하나만 사용하여 그냥 뚝딱 해결할 수 있다거나 하지는 않다는 말입니다. 그러나 저 역시도 SQL 쿼리문에 대해서는 그다지 신통치 않으므로 제가 모르는 해결책이 있을 수도 있다는 점을 감안하여 주십시요. ^_^;;; 아무튼 이 문제를 해결하는 방법에는 이런 방법들이 있지 않을까 합니다. SQL 구문 내에서도 YEAR() 함수, MONTH() 함수, DAY() 함수를 사용하실 수 있습니다. 따라서 sms_date 컬럼을 이 함수들로 한 번 처리하여 그 값을 ASP 의 날짜와 비교하는 방법이 있겠죠. 다음과 같이 말입니다. SELECT * FROM sender WHERE user_id = 'USER' AND YEAR(sms_date) = '2004' AND MONTH(sms_date) = '5' AND DAY(sms_date) = '19'물론 위에서 실제로 비교할 날짜들은 ASP 의 함수를 이용해서 구해야 하구요. 어떻게 생각하면 가장 무식하고 간단한 방법입니다. 그러나 굳이 단점이라면 sms_date 컬럼을 대상으로 세 번 계산을 수행하기 때문에 권장되는 방법은 아니죠. 그래서 다음과 같은 방법도 한 번 생각해 볼 수 있습니다 SELECT * FROM sender WHERE user_id = 'USER' AND sms_date >= '2004-05-19 00:00:00' AND sms_date < '2004-05-20 00:00:00'위와 같은 방법을 사용하면 원하는 날짜에 해당하는 데이타를 가져오실 수 있습니다. 이 방법은 조금 지저분해지는 대신 sms_date 컬럼에 손을 대지 않으므로 비교적 속도가 빠르다는 장점이 있구요. 물론 지금과 같은 상황에서는 속도가 그다지 큰 영향을 받지는 않겠지만 말입니다. 또 한 가지 가장 간단하면서도 무식한 방법은 sms_date 컬럼을 CHAR 타입으로 변경하시는 것입니다. 날짜를 위한 데이터이긴 하지만 단순히 위와 같은 구현만을 위해서라면 꼭 datetime 형으로 구현하실 필요는 없지요. 물론 이 컬럼에 엄격한 데이터 무결성이 요구된다든가 할 때에는 얘기가 틀리지만 단순히 위의 작업만을 위해 존재하는 컬럼이라면 충분히 고려하실만하다고 생각합니다. 그리고 두 번째 말씀하신 문제는 오류 메세지의 내용으로 볼 때 정말로 해당하는 데이타가 존재하지 않기 때문에 발생하는 것입니다. 말씀하신대로 특정 일자에 메일을 발송한 데이타가 저장되도록 테이블이 구현되어있는 경우, 특정 일자에 아직까지 한 번도 메일을 보낸 적이 없다면 당연히 조회된 결과가 없겠죠. 따라서 ... If rs.BOF = false or sms_send < 5 or session("session_sms") = "M" then코드의 앞 부분에서 다음과 같은 검사를 한 번 더 수행해 주어야 합니다. If rs.BOF AND rs.EOF Then '** 해당 일자에 한 번도 해당 유저가 메일을 발송한 적이 없음. '** 따라서 메일을 발송할 수 있다. Else '** 기존의 코드가 여기에 위치한다. If rs.BOF = false or sms_send < 5 or session("session_sms") = "M" then ... 중략 ... End If이처럼 레코드셋을 사용하시기 전에는 항상 리턴된 결과 데이터가 존재하는지 여부를 검사하시는 것이 바람직합니다. 감사합니다. |
IP 주소: 210.127.85.191
|
게시물 | ||||
---|---|---|---|---|
415 |
안녕하세요~ ^-^ [2] |
오마르 |
2004-06-02 | 977 |
414 |
도우미 |
2004-06-02 | 963 | |
413 | 2004-06-02 | 3,057 | ||
412 |
바보똥개 |
2004-05-29 | 1,122 | |
411 | 2004-05-29 | 4,514 | ||
410 |
바보똥개 |
2004-05-31 | 928 | |
409 |
toast |
2004-05-28 | 1,050 | |
408 | 2004-05-28 | 3,259 | ||
407 |
toast |
2004-06-02 | 988 | |
406 |
오마르 |
2004-05-25 | 1,087 | |
405 |
re: 안녕하세요~~ ^^ [2] |
2004-05-25 | 3,352 | |
404 |
re: 안녕하세요~~ ^^ [1] |
2004-05-27 | 3,043 | |
403 | 2004-05-21 | 2,952 | ||
402 | 2004-05-21 | 3,093 | ||
401 |
오마르 |
2004-05-19 | 1,005 | |
400 | 2004-05-19 | 3,496 | ||
399 |
김민 |
2004-05-19 | 1,063 | |
398 |
왕 삽질 |
2004-05-18 | 1,058 | |
2004-05-19 | 3,224 | |||
396 |
파일 큐브에 대한 질문 [1] |
궁금이 |
2004-05-18 | 1,015 |
395 |
궁금이 |
2004-05-14 | 907 | |
394 | 2004-05-14 | 3,124 | ||
393 |
궁금이 |
2004-05-14 | 886 | |
392 |
진심으로 감사드립니다. 근데요 [1] |
궁금이 |
2004-05-14 | 935 |
391 |
오마르 |
2004-05-13 | 918 |