2012-09-06 2 views
0

ASP.NET 기반 웹 사이트에서 일부 데이터를 추출 할 수 있도록 SQL 쿼리를 개발하려고합니다. WebMatrix를 사용하여 ASP.NET 기반 웹 사이트에서 SQL 압축 데이터베이스 (sdf)를 만들고 있습니다.SQL 쿼리 개발에 도움이 필요합니다.

데이터베이스의 월간 스프링 정리를 수행하기 위해 내 웹 사이트에 코드를 구현하려고합니다. 사용자가 생성했지만 활성화되지 않은 계정은 삭제해야합니다. 따라서 사용자 ID를 확보하고 데이터베이스 크기를 관리하려면 데이터베이스에서 쿼리를 실행하여 사용자가 아직 확인하지 않은 계정을 가져오고 생성 날짜가 20 일이 지난 것으로 생각했습니다.

데이터베이스 구조는 내 사용자의 테이블을 "사용자"라고합니다. UserID (자동 번호), Email, FullName 등의 필드가 있습니다.

ASP의 WebSecurity에서 만든 테이블을 "webpages_Membership"이라고합니다. 그것은 UserID (autonumber), CreationDate, IsConfirmed (계정이 활성화되었는지 여부 등) 필드를 가지고 있습니다.

SQL 쿼리를 개발하는 데 익숙하지 않습니다. 내가 직면하고있는 문제는 사용자가 DeleteAllRecords로 설정된 인수로 Membership.DeleteUser 메소드를 사용하여 삭제할 때 자체 테이블 "webpages_Membership"에서 아무 작업도 수행하지 않는 반면 내 사용자 테이블에서 관련 사용자의 행을 삭제한다는 것입니다. 사용자가 로그인하려고하면 내 Users 테이블에 Email (userid)이 있는지 여부 만 확인합니다. 따라서 장기적으로 "webpages_Membership"에 나타나는 계정은 삭제 되었기 때문에 "Users"테이블에 존재하지 않습니다. WbeSecurity의 행동에 익숙한 사람들은 위의 모든 것을 경험 했어야합니다.

"webpages_Membership"테이블을 조회 할 쿼리를 개발하려고 할 때 IsConfirmed 필드가 False (아직 활성화되지 않은 계정) 인 행을 가져 와서 "webpages_Membership"필드의 UserID 필드가 " "또한"사용자 "테이블에 있습니다 (계정이 이전에 삭제되지 않았 음을 보장합니다).

+3

정확한 질문을 작성하려면 – NoNaMe

+0

웹 보안 코드의 작동 방식에 대한 배경 지식을 써야했습니다. 그 행동 때문에 나는 그것에 대한 적절한 쿼리를 작성할 수 없습니다. –

+0

지금까지 가지고있는 코드를 게시하여 무언가로 시작하십시오. 그리고 가능한 경우 테이블 구조를 표시하는 방법을 향상 시키므로 테이블 구조를 사용하는 것이 가능합니다. 또한 테스트 할 데이터를 게시하는 것이 좋습니다. – Yaroslav

답변

0
select wm.* from webpages_Membership wm inner join Users u 
on wm.UserID = u.UserID 
Where wm.IsConfirmed = 'false' 
and DATEADD(dd,20,wm.CreationDate) <= getdate() 
+0

답장을 보내 주셔서 감사합니다. 나는 MS Access 내 더미 데이터베이스 구조에 대한 귀하의 쿼리를 시도했다. 그것은 나에게 오류를 제공합니다. Undefined function GetDate(). 이 기능은 MS Access에서 사용할 수 있습니까? –

+0

지금 사용해보십시오() – AnandPhadke

+0

SQL 압축 데이터베이스 (GetDate를 인식)에 쿼리를 적용했습니다. 쿼리가 관련 행을 반환하지만 날짜 함수가 제대로 작동하지 않더라도. 그것도 20 이하의 creationdate와 행을 반환합니다. 나는 창조 날짜 이후 20 일을 능가 계정을해야합니다. –