2013-07-09 2 views
0

꽤 복잡한 보고서를 작성해야합니다. 의심의 여지없이 누군가가 카운트, 합계 등을 구성하는 개인 기록을 요구할 것입니다.SQL 데이터베이스의 SQL 문을

Ims my to mySql. 나는 시도해 보았고 Sql 문을 실제 문제없이 Text 형식의 데이터로 저장할 수 있다는 것을 알았다.

이 좋은 생각인가 :

그러나 주요 문제는 구걸, 그것을 할 수있는 것은? 거기에 여기에 "맞았 어!"

(그것의 당신이 당신을 얻을 모르는 항상 무엇을, 당신이 알고하지 않습니다 결코 무엇을) 보고서는 판매 개수를 반환합니다

: 5

내가 판매 WHERE SELECT * FROM "저장 라이브 것이다 Producer_ID = 34 "그래서 5 개의 Sales 카운트를 구성하는 34 개의 레코드로 빠르게 이동할 수 있습니다.

+1

"Sql 문"은 실제 쿼리 또는 반환되는 데이터 집합을 말하는 것입니까? 그것이 질의 인 경우 저장 프로 시저를 조사하고 싶을 것입니다. –

+1

개인적으로 또는 귀하의 팀이 진술을 데이터베이스에 넣고 있습니까? 또는 사용자 입력을 허용하고 해당 스크립트를 저장하는 앱의 일부가 있습니까? 그저 너라면, 괜찮을거야. 하지만 나는 어느 사용자 (당신이 "신뢰하는"사용자조차도)가 어디서나 저장되는 SQL 문을 생성하는 것을 허용하지 않을 것입니다. –

+0

보고서는 Sales Count를 반환합니다. 5 "SELECT * FROM Sales WHERE Producer_ID = 34"를 저장하기 위해 살 것입니다. 그래서 5 개의 Sales 카운트를 구성하는 34 개의 레코드를 신속하게 가져올 수 있습니다. – JVMX

답변

2

SQL DB의 데이터로 SQL 쿼리를 저장하는 것이 가끔 동적 SQL 쿼리라고 표시됩니다. 주사 문제가 발생하기 쉽고 가볍게 수행되어서는 안됩니다. 그렇게 할 이유가 없다면 그렇게하지 않는 것이 좋습니다.

+0

DB에 쿼리를 저장하는 올바른 이유는 무엇입니까? –

+0

@DanyKhalife는 phpmyadmin에서 즐겨 찾기를 기억합니다. – mnagel

+0

@DanyKhalife SQL을 사용하지 않는 평신도가 다양한 값을 입력 할 수있는 "마법사"를 사용하는 응용 프로그램을 만들었습니다. 그러면 응용 프로그램의 데이터가 사용자 정의보기로 생성됩니다. 네, 최종 SQL은 입력 된 값에 의해 파생 될 수 있지만, 성능 향상을 위해 SQL 문 (실제로는 여러 부분)을 저장했습니다. – user1032531