2012-09-01 1 views
1

은 내가에만 이름을 알고 있다면 나는 MEMBERID을 얻을 것 어떻게동일한 엔트리에서 다른 값을 알고있는 동안 테이블에서 값을 가져 오는 방법은 무엇입니까?

MemberID(int), 
Username(varchar16), 
Password... etc. 

를 포함하는 membership 테이블을 가지고? SQL ASP.Net C#을 사용하고 있습니다.

+0

과 일치하는 첫 번째 MEMBERID를 반환합니다? 사용자 이름으로 만 사용자를 검색 할 수 있습니다. – Oded

+0

'MembershipProvider'에 대한 ['GetUser (string, bool)'] (http://msdn.microsoft.com/en-us/library/bwzxkby7.aspx)를 참조하십시오. – Oded

답변

2

username 값을 알고 있기 때문에. where 절의 조건으로 사용하십시오. 여기서는 username이 고유하다고 가정했거나 그렇지 않으면 지정한 사용자 이름과 일치하는 회원의 모든 ID를 갖게됩니다. 당신이 ADO.Net을 사용하고 있기 때문에

SELECT MemberID 
FROM Membership 
WHERE Username = 'usernameHere' 

// other codes heres 
string MemberID = cmd.ExecuteScalar().ToString(); 
// the MemberID variable already holds the value of the ID 
// that matches your username. 
+0

나는 그걸 가지고있다. int 변수에 저장하는 방법을 혼란스럽게 생각한다. 이것은 웹 페이지 (aspx.cs)에 새 SqlCommand ("SELECT MemberID ...")가 있습니다. 내 페이지에서 MemberID를 어떻게 사용합니까? – sora0419

+0

@ sora0419 방금 답변을 업데이트했습니다. –

0
SELECT MemberId FROM Member WHERE UserName = 'username' 

는 사용자 이름은 사용자 이름과 일치하는 여러 행을 반환 고유 열이 아니라고,이 시도 그래서 당신의 더 나은 귀하의 질의에 TOP (1)을 추가하십시오. 그렇지 당신이 SqlCommand.ExecuteScalar을 (할 수있다), 이것은 당신이 왜 당신이 그것을 사용하지 않는, 회원 인프라를 사용하는 경우 사용자 이름을

SqlCommand.ExecuteScalar() 
관련 문제