2014-07-05 2 views
0

리팩터링을 위해 코드를 재검토하고 mysql 준비 문을 사용해야하는지 여부를 논의합니다. 내가 이루고자하는 유일한 목표는 단순히 레스토랑 음식 주문 웹 사이트의 메뉴 항목을 표시하는 것입니다. 그게 다야. 데이터베이스에서 메뉴 항목을 선택하고 while 루프를 사용하여 표시합니다.while 루프에서 prepared statements를 사용해야합니까?

php의 웹 사이트에서 설명서를 읽는 중. 그들은 진술서를 반복 할 때 준비된 진술이 더 효율적이라고 말했다.

하지만 내가하고있는 일은 사용자가 내 페이지를 방문 할 때 테이블을 한 번 쿼리하고 while 루프를 수행하는 것뿐입니다.

SQL 삽입을 방지한다는 사실 이외의 준비된 명령문을 사용하는 것이 정말로 필요합니까?

+0

하나의 쿼리에서 수행중인 작업에 따라 다릅니다. 즉 외부에서 스크립트에 게시되는 변수를 사용합니까? –

답변

0

준비된 명령문을 사용하면 SQL 주입을 방지 할 수있을뿐만 아니라 프로그램의 흐름이 객체 지향 프로그래밍의 패턴을 따르게됩니다. 이 방법을 사용하면 OO 방식으로 애플리케이션을 개발할 수 있으므로 대부분의 ORM에서 볼 수있는 다양한 기법을 활용할 수 있습니다.

성능면에서 차이점은 다른 옵션을 고려할 때이 특별한 경우에는 무시하겠다는 뜻입니다. PHP mysql-*의 절차 적 및 비추천 방식으로 전환하는 기능은 분명히 대답이 아니며, 파이썬이나 루비의 세계에 있다면 거의 모든 현대 ORM의 기초가 개념에 의존한다는 것을 알게 될 것입니다 객체 지향 코드 흐름.

+0

나는 코딩의 절차적인 방식을 정말로 언급하지는 않았다. 나는 아직도 OOP mysqli 쿼리를 사용한다. while 루프에 대해 prepared statement를 사용하는 것이 가치가 있는지 알고 싶었습니다. – user3790981

관련 문제