"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 저장된 절차를 사용하여 MySQL 스키마를 Github Wiki Markdown으로 변환하는 방법은 무엇입니까?

저장된 절차를 사용하여 MySQL 스키마를 Github Wiki Markdown으로 변환하는 방법은 무엇입니까?

2025-02-06에 게시되었습니다
검색:940

How to Convert a MySQL Schema to GitHub Wiki Markdown Using Stored Procedures?

첫 번째 저장 프로 시저 : destrencetables_v2a

이 절차는 데이터베이스 이름을 입력으로 가져옵니다. 해당 데이터베이스의 모든 테이블에 대한 설명 마이 테이블의 출력과 유사한 출력을 생성합니다. 정보 _schema 데이터베이스를 사용하여 결과를 조작하여보다 상세하고 구성된 출력을 제공함으로써이를 달성합니다. 출력은 reportdatadefs 데이터베이스의 ReportDatadefs 테이블에 저장됩니다.

매개 변수 :

dbname :보고 할 데이터베이스 이름

] THESSESSION :이 작업에 할당 된 세션 번호를 보유하는 출력 매개 변수. DeletEsessionRows : 출력을 생성 한 후이 세션의 reportDatadefs 테이블에서 행을 삭제할지 여부를 나타내는 부울. : Prett Printing (설명과 같은) 출력에 대한 두 번째 저장 절차를 자동으로 호출할지 여부를 나타내는 부울.

중간 데이터를 저장하는 테이블. 표 및 열 이름, 유형, 무효, 키 및 추가 정보를 고려하여 information_schema 데이터베이스의 임시 테이블에 데이터를 삽입합니다. 열 및 유형 최대 길이 및 널, 키, 기본값 및 추가 값에 대한 최대 길이 및 카운터를 포함하여 임시 테이블의 데이터를 사용하면

  1. Pretty Printed Output 및 ReportOutput 테이블에 추가합니다.
  2. CallSeCondStordProc이 False 인 경우 주어진 세션 번호에 대한 ReportDatadefs 테이블에서 데이터의 결과 세트를 리턴합니다.

    ReportDatadefs 테이블에서 필요한 데이터를 추출합니다.
  1. 필드 이름, 유형, nullability, 키, 기본값 및 추가 정보가있는 각 테이블에 대한 테이블 헤더를 생성합니다.
  2. 각 열의 형식. 일관된 너비와 정렬로의 데이터.
  3. 서식 막대와 형식의 열을 분리합니다.
  4. 형식의 출력을 결과 세트로 반환합니다.

:

저장된 절차를 사용하려면 사용자는 필요한 데이터베이스 이름 및 기타 매개 변수를 제공 할 수 있습니다. 사용법의 예는 다음과 같습니다.

set @theoutvar = -1; - 아래의 아웃 변수로 사용되는 변수 - 참고 : 'True'는 네 번째 매개 변수로서 한 번의 통화 거래입니다. 의미, 당신은 끝났습니다. 전화 reporting101a.describetables_v2a ( 'stackoverflow',@theoutvar, false, true); - 위의 4 번째 매개 변수가 False 인 경우 주로 사용됩니다. 전화 reporting101a.print_tables_like_describe (@theoutvar); - 더 예쁘게 결과에 대한 데이터를 청크 형식으로로드합니다.
SET @theOutVar =-1; -- A variable used as the OUT variable below

-- Note: with `TRUE` as the 4th parameter, this is a one call deal. Meaning, you are done.
call Reporting101a.describeTables_v2a('stackoverflow',@theOutVar,false,true);

-- Primarily used if the 4th parameter above is false
call Reporting101a.Print_Tables_Like_Describe(@theOutVar); -- loads data for prettier results in chunk format.
이 사용법은 먼저 reporting101a.describetables_v2a 저장 프로 시저를 호출하고 세션 번호를 검색합니다. 그런 다음 reporting101a.print_tables_like_describe 저장 프로 시저를 해당 세션 번호와 함께 자동으로 호출하여 인쇄 된 출력을 생성합니다. 출력은 결과 세트로 반환되며, 마크 다운 형식 테이블로 변환하는 것과 같이 더 소비 및 형식을 소비 할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3