2011-02-22 2 views
0

MySQL 데이터베이스에서 뷰를 생성하고 저장하면 전체 코드가 수정되고 모든 코드는 한 줄에 저장됩니다.이 코드는 저장시 여러 줄에있었습니다. 또한 많은 괄호가 코드에 추가됩니다. 정상입니까?MySQL -보기 : 저장 후 정의가 변경됩니까?

복잡한보기를 (일부 조인으로) 편집 한 다음 나중에 읽을 수 없으므로 어떻게 편집 할 수 있습니까?

+0

"저장"이란 무엇을 의미합니까? 보기를 "저장할"때 수행 할 작업을 정확히 설명 할 수 있습니까? –

+0

나는 항상 Navicat 또는 이와 유사한 것을 사용합니다. 나는 커맨드 라인을 사용하지 않는다. 이런 종류의 데이터베이스 관리 소프트웨어에서는 테이블과 뷰를 쉽게 생성/편집 할 수 있습니다. 문제는보기를 저장 한 후에보기의 정의가 변경된다는 것입니다. 매우 성가신 ... – Dylan

답변

0

수정 버전 제어 시스템의 파일과 나머지 응용 프로그램 코드에 깔끔하게 형식화 된 SQL 코드를 저장할 수 있습니다. 그런 다음보기를 수정해야 할 경우 원래보기를 작성하는 데 사용한 SQL을 체크 아웃하고 수정 한 다음보기를 다시 작성하여 실행할 수 있습니다. 수정 된 SQL을 다시 저장소에 커밋 할 수 있습니다.

서식을 유지하는 것 외에도이 방법의 또 다른 이점은 일반적인 코드로 할 수있는 것처럼 데이터베이스 코드의 변경 내용을 추적 할 수 있다는 것입니다.

+0

Ok thanx .... 내가 듣기를 희망하는 대답은 ... 왜 MySQL이 코드를 다시 작성합니까?! 필자가 가지고있는 문제는 필자가 자주 내 쿼리를 변경하지만 뷰를 사용하여 나중에 테스트하고 편집 할 수 없다는 것입니다. – Dylan

0

처음 시작할 때 원본 코드를 저장할 수 있습니다. 또한 데이터베이스에서 뷰의 코드를 가져 와서 형식을 지정할 도구를 사용할 수도 있습니다. 나는 SQLyog을 사용하며 매우 잘 작동한다는 것을 알았습니다.

+0

Navicat를 사용합니다. Beautify SQL 함수가 있지만, 괄호 안에 하나의 행을 사용하므로 매우 아름답습니다. – Dylan

0

나는 똑같은 문제에 직면했다. 비록이 게시물은 오래되었지만 사람들이 우리를 도울 것이라고 생각합니다. :)

내 SQL을 가져올 때이 문제가있었습니다. 그런 다음 수출 된 SQL이 너무 많은 괄호와 거즈가있는 한 줄 짜증나는 형식이라는 것을 알고 있습니다. navicat에서 입력 한 원래 멀티 라인 형식 대신 (읽을 수 없음)

내가 한 일 : DB에서 가져 오기/가져 오기를 원할 경우 SQL 스크립트에서 멀티 라인 형식을 만듭니다. 그래서 기본값은 다중 행 형식입니다. 내 테스트는 뷰에 대한 정의가 저장을 클릭하면 항상 원래 형식으로 되돌아갑니다.