【관련주제 추천 : mysql 면접질문(2020)】
1. 트리거는 무엇을 합니까?
답변: 트리거는 주로 이벤트에 의해 트리거되고 실행되는 특수 저장 프로시저입니다. 데이터 무결성과 일관성을 유지하기 위해 제약 조건을 적용할 수 있으며 데이터베이스 내 작업을 추적하여 무단 업데이트 및 변경을 방지할 수 있습니다. 계단식으로 배열될 수 있습니다. 예를 들어 테이블의 트리거에는 다른 테이블의 데이터 작업이 포함되어 있으며 이 작업으로 인해 해당 테이블의 트리거가 트리거됩니다.
2. 저장 프로시저란 무엇입니까? 무엇을 부르나요?
답변: 저장 프로시저는 미리 컴파일된 SQL 문입니다. 장점은 모듈식 설계를 허용한다는 것입니다. 즉, 한 번만 생성하면 나중에 프로그램에서 여러 번 호출할 수 있습니다. 특정 작업에 SQL을 여러 번 실행해야 하는 경우 저장 프로시저를 사용하는 것이 간단한 SQL 문을 실행하는 것보다 빠릅니다. 명령 개체를 사용하여 저장 프로시저를 호출할 수 있습니다.
3. 인덱스의 역할은 무엇인가요? 그리고 장점과 단점은 무엇입니까?
답변: 인덱스는 데이터베이스 검색 엔진이 데이터 검색 속도를 높이기 위해 사용할 수 있는 특수 쿼리 테이블입니다. 실생활에서 책의 목차와 매우 유사합니다. 책 전체를 조회하지 않고도 원하는 데이터를 찾을 수 있습니다. 인덱스는 고유할 수 있습니다. 인덱스를 생성하면 단일 열 또는 여러 열을 지정할 수 있습니다. 단점은 데이터 입력 속도가 느려지고 데이터베이스 크기가 증가한다는 것입니다.
4. 메모리 누수란 무엇입니까?
답변: 일반적으로 메모리 누수라고 부르는 것은 힙 메모리 누수를 의미합니다. 힙 메모리는 프로그램에 의해 힙에서 할당되며 메모리는 사용 후에 해제되어야 합니다. 애플리케이션이 new 등의 키워드를 사용하여 객체를 생성하면 힙에서 메모리 일부를 할당합니다. 사용 후 프로그램은 메모리를 해제하기 위해 free 또는 delete를 호출합니다. 메모리가 유출됐다는 거죠.
5. 거래란 무엇입니까? 자물쇠란 무엇입니까?
답변: 트랜잭션은 논리적 작업 단위로 함께 바인딩된 SQL 문 그룹입니다. 문 작업이 실패하면 전체 작업이 실패하고 향후 작업은 작업 이전 상태로 롤백됩니다. 노드가 있을 것입니다. 무언가가 실행되거나 실행되지 않도록 하기 위해 트랜잭션을 사용할 수 있습니다. 그룹화된 문이 트랜잭션으로 간주되려면 ACID 테스트, 즉 원자성, 일관성, 격리성 및 내구성을 통과해야 합니다.
잠금: 모든 DBMS에서 잠금은 트랜잭션을 실현하는 열쇠입니다. 잠금은 트랜잭션의 무결성과 동시성을 보장할 수 있습니다. 실생활의 잠금과 마찬가지로 특정 데이터의 소유자가 특정 기간 동안 특정 데이터 또는 데이터 구조를 사용하는 것을 방지할 수 있습니다. 물론 잠금도 레벨로 구분됩니다.
6. 뷰란 무엇입니까? 커서란 무엇입니까?
답변: 뷰는 물리적 테이블과 동일한 기능을 가진 가상 테이블입니다. 뷰는 일반적으로 하나의 테이블이나 여러 테이블에 있는 행이나 열의 하위 집합입니다. 뷰를 수정해도 기본 테이블에는 영향을 주지 않습니다. 다중 테이블 쿼리에 비해 데이터를 더 쉽게 얻을 수 있습니다.
Cursor: 쿼리 결과 집합을 단위로 효과적으로 처리합니다. 커서를 셀의 특정 행에 배치하여 결과 집합의 현재 행에서 하나 이상의 행을 검색할 수 있습니다. 결과 집합의 현재 행을 수정할 수 있습니다. 커서는 일반적으로 사용되지 않지만, 데이터를 하나씩 처리해야 할 때 커서는 매우 중요합니다.
위 내용은 MySQL 면접 질문 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!