2012-02-27 4 views
1

이 SQL 문SQL 구문 면도기 webmatrix에서 사용 삽입 명령

@{ 
var userId = Request["UserId"]; 
    var db = Database.Open("intranet"); 
    var query3 = "INSERT INTO CongeAccept(UserId,DateDebut,DateFin,TypeConge) SELECT UserId,DateDebutDemande,DateFinDemande,TypeConge FROM DemandeConge WHERE UserId = '" + userId + "'"; 
      db.Execute(query3); } 

답변

1

어떤 probleme이 SQL 문 어떤 probleme 그것은 대개 여기서 사용자 아이디에 의존

거기이다 에서 온다. 사용자가 SQL 인젝션 공격까지 자신을 개방했다면

매개 변수를 사용해야합니다. 추가 보너스로 값을 따옴표로 묶을 때 걱정할 필요가 없습니다.

+0

tnks의 친구가 ^^ 앞으로 지금 내가 – user1233875

+0

tnks가 통지 dudde를 ^^ 호텔 fr 변경 사촌 코드를 살펴

var query3 = @"INSERT INTO CongeAccept(UserId,DateDebut,DateFin,TypeConge) SELECT UserId,DateDebutDemande,DateFinDemande,TypeConge FROM DemandeConge WHERE UserId = @0"; db.Execute(query3, userId); 
그래서 내가 넣어 "@"를 var에 이름 앞에 변수 이름을 사용하고자 할 때? – user1233875

+0

그래도 변수 이름은 나타나는 순서대로 바뀌므로 실제로 중요하지 않습니다. [Database.Execute Method] (http://msdn.microsoft.com/en-us/library/webmatrix.data.database.execute (v = versus99) .aspx) –