Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL
  • C 프로그래밍
  •   
  • C++
  •   
  • Redis
  •   
  • BASH 프로그래밍
  •   
  • Python
  •   
  • Java
  •   
  • 데이터 베이스
  •   
  • HTML
  •   
  • JavaScript
  •   
  • 프로그램 작성
  •   
  • CSS
  •   
  • Ruby
  •   
  • SQL
  •   
  • IOS
  •   
  • Android
  •   
  • MongoDB
  •   
  • MySQL
  •   
  • C#
  •   
  • PHP
  •   
  • SQL Server
  • MySQL

    1. MySQL IFNULL() 제어 흐름 기능의 용도는 무엇입니까?

      MySQL IFNULL() 제어 흐름 함수는 NULL이 아니면 첫 번째 인수를 반환하고 그렇지 않으면 두 번째 인수를 반환합니다. 구문 IFNULL(expression1, expression2) 여기서 expression1이 NULL이 아니면 IFNULL()은 expression1을 반환하고 그렇지 않으면 expression2를 반환합니다. 두 인수가 모두 NULL이면 NULL을 반환합니다. 다음 예는 이것을 나타냅니다 - mysql> Select IFNULL(NULL,'Ram'); +---------------

    2. MySQL은 저장 프로시저가 생성된 시점의 환경을 보존합니까?

      실제로 MySQL은 저장 프로시저가 생성되는 시점의 환경을 보존합니다. 문자열을 연결하기 위해 두 개의 막대를 사용하는 예제를 따르면 이해할 수 있습니다. 이것은 SQL 모드가 si인 동안에만 유효합니다. 그러나 SQL 모드를 non-ansi로 변경하면 원래 설정이 여전히 참인 것처럼 절차가 계속 작동합니다. 예시 mysql> Set sql_mode = 'ansi'// Query OK, 0 rows affected, 1 warning (0.14 sec) mysql> Create Procedure Con_s

    3. MySQL 저장 프로 시저 내의 변수 범위는 무엇을 의미합니까?

      BEGIN/END 블록 내에서 변수를 선언하면 이 변수의 범위가 이 특정 블록에 있다고 가정합니다. 완전히 합법적이지만 범위는 BEGIN/END 블록 내에 있는 다른 BEGIN/END 블록 내에서 동일한 이름을 가진 변수를 선언할 수도 있습니다. 변수의 범위를 표시하는 프로시저를 만드는 다음 예제의 도움으로 이해할 수 있습니다. - 예 mysql> Create Procedure Scope_variables()     -> BEGIN     -> DECLARE A Varchar(5)

    4. MySQL NULLIF() 제어 흐름 기능의 용도는 무엇입니까?

      MySQL NULLIF() 제어 흐름 함수는 두 인수가 같으면 NULL을 반환하고, 그렇지 않으면 첫 번째 인수를 반환합니다. 구문 NULLIF(expression1, expression2) 여기서 expression1 =expression2이면 NULLIF()에 의해 NULL이 반환되고 그렇지 않으면 expression1이 반환됩니다. 다음 예는 이것을 나타냅니다 - mysql> Select NULLIF('Ram','Ram'); +---------------------+ | NULLIF('

    5. NULLIF()에서 인수가 같지 않은 경우 MySQL은 표현식을 어떻게 평가합니까?

      MySQL NULLIF() 제어 흐름 함수가 첫 번째 인수를 반환한다는 것을 알고 있듯이 두 인수는 동일하지 않습니다. 두 인수가 같지 않으면 MySQL이 첫 번째 인수를 두 번 평가하기 때문에 첫 번째 인수가 반환됩니다. 예시 mysql> Select NULLIF('Tutorialspoint','MySQL'); +----------------------------------+ | NULLIF('Tutorialspoint','MySQL') | +--------------

    6. 특정 데이터베이스의 세부 정보가 있는 테이블을 나열하려면 데이터베이스 이름을 매개변수로 사용하는 MySQL 저장 프로시저를 만듭니다.

      현재 query라는 데이터베이스를 사용 중이고 그 안에 다음 테이블이 있다고 가정합니다. − mysql> Show tables in query; +-----------------+ | Tables_in_query | +-----------------+ | student_detail  | | student_info    | +-----------------+ 2 rows in set (0.00 sec) 이제 다음은 데이터베이스 이름을 매개변수로 받아들이고 자세한 정보가 포함된 테이블 목록을 제공하는 저

    7. MySQL 저장 프로시저는 어떻게 내부에 있는 다른 MySQL 저장 프로시저를 호출할 수 있습니까?

      MySQL 저장 프로시저가 내부에서 다른 MySQL 저장 프로시저를 호출할 수 있습니다. 이를 보여주기 위해 저장 프로시저가 다른 저장 프로시저를 호출하여 last_insert_id를 찾는 예를 들어보겠습니다. 예시 mysql> Create table employee.tbl(Id INT NOT NULL AUTO_INCREMENT, Name Varchar(30) NOT NULL, PRIMARY KEY(id))// Query OK, 0 rows affected (3.87 sec) mysql> Create Procedure

    8. MySQL 저장 프로시저를 통해 테이블에 어떻게 액세스할 수 있습니까?

      MySQL 저장 프로시저에서 하나 또는 모든 테이블에 액세스할 수 있습니다. 다음은 테이블 이름을 매개변수로 받아들이고 이를 호출한 후 테이블의 모든 세부 정보가 포함된 결과 집합을 생성하는 저장 프로시저를 만든 예입니다. 예시 mysql> Delimiter // mysql> Create procedure access(tablename varchar(30))    -> BEGIN    -> SET @X := CONCAT('Select * from',' &

    9. MySQL 저장 프로시저 내에서 어떻게 START 트랜잭션을 수행할 수 있습니까?

      알고 있듯이 START 트랜잭션은 트랜잭션을 시작하고 자동 커밋 모드를 끄기로 설정합니다. 다음 예에서는 다음 데이터가 있는 employee.tbl 테이블에 새 레코드를 삽입하는 START 트랜잭션이 있는 저장 프로시저를 만들었습니다. - mysql> Select * from employee.tbl; +----+---------+ | Id | Name    | +----+---------+ | 1  | Mohan   | | 2  | Gaurav  | | 3  | R

    10. MySQL 저장 프로시저 내에서 COMMIT 트랜잭션을 어떻게 수행할 수 있습니까?

      알고 있듯이 START 트랜잭션은 트랜잭션을 시작하고 COMMIT는 트랜잭션을 시작한 후 변경된 사항을 적용하는 데 사용됩니다. 다음 예에서는 다음 데이터가 있는 테이블 employee.tbl에 새 레코드를 삽입하고 변경 사항을 커밋하는 START 트랜잭션과 함께 COMMIT를 사용하여 저장 프로시저를 만들었습니다. - mysql> Select * from employee.tbl; +----+---------+ | Id | Name    | +----+---------+ |  1 | Mohan &nb

    11. MySQL 저장 프로시저에서 COMMIT를 사용하고 START 트랜잭션 아래에 있는 트랜잭션 중 하나가 실패하면 어떻게 됩니까?

      쿼리 중 하나가 실패하거나 오류를 생성하고 MySQL이 제대로 실행한 다른 쿼리가 여전히 제대로 실행된 쿼리의 변경 사항을 커밋한다고 가정합니다. 다음 데이터가 있는 employee.tbl 테이블을 사용하는 다음 예에서 이해할 수 있습니다. - 예시 mysql> Select * from employee.tbl; +----+---------+ | Id | Name    | +----+---------+ | 1  | Mohan   | | 2  | Gaurav  | | 3 &nb

    12. MySQL 저장 프로시저 내에서 ROLLBACK 트랜잭션을 어떻게 수행할 수 있습니까?

      우리가 알고 있듯이 롤백 트랜잭션이 시작된 후 데이터베이스에 대한 모든 변경 사항을 되돌립니다. 롤백 을 수행하려면 MySQL 저장 프로시저에서 EXIT 를 선언해야 합니다. 매니저. sqlexception 또는 SQL 경고에 대한 핸들러를 사용할 수 있습니다. 다음과 같은 세부 정보가 있는 테이블에 대해 ROLLBACK이 생성된 저장 프로시저의 예를 통해 이해할 수 있습니다. - mysql> SHOW CREATE table gg\G *************************** 1. row ****************

    13. 저장 프로시저 내에서 수행되는 작업과 복제된 함수는 어떻게 됩니까?

      실제로 저장 프로시저 및 기능에서 수행되는 표준 작업은 마스터 MySQL 서버에서 슬레이브 MySQL 서버로 복제됩니다. 마스터 MySQL 서버에서 일반 DDL 문을 통해 수행되는 저장 프로시저 및 기능 생성조차도 슬레이브 MySQL 서버로 복제됩니다. 이러한 방식으로 개체는 두 서버에 모두 존재하게 됩니다. MySQL은 저장 프로시저 및 함수 내부에서 발생하는 각 DDL 이벤트를 기록하기 때문에 저장 프로시저 및 함수 내부에서 발생하는 작업이 복제됩니다. 이벤트를 기록한 후 슬레이브 MySQL 서버에 복제됩니다. 그러나 저장 프

    14. 복제와 함께 저장 프로시저 및 기능을 사용하기 위한 특별한 보안 요구 사항은 무엇입니까?

      실제로, MySQL 슬레이브 서버는 마스터의 MySQL 서버 바이너리 로그에서 읽은 명령문을 실행할 수 있는 권한이 있으므로 복제와 함께 저장된 기능을 사용하기 위한 몇 가지 특별한 보안 제약이 있습니다. 일반적으로 복제 또는 바이너리 로깅(특정 시점 복구 목적으로)이 활성화된 경우 MySQL DBA는 두 가지 보안 옵션을 사용할 수 있습니다. SUPER 권한 옵션 저장 함수를 생성하려는 사용자는 DBA로부터 SUPER 권한을 부여받아야 합니다. log_bin_trust_function_creators 모드 실제로, log_b

    15. 저장 프로시저 및 함수 복제에 대한 제한 사항은 무엇입니까?

      다음은 저장 프로시저 및 기능 복제에 대한 제한 사항입니다. − 작업 유형 − 실제로 저장 프로시저 및 함수의 복제는 작업 유형에 따라 다릅니다. 저장 프로시저에 포함된 작업이 비결정적(임의)이거나 시간 기반인 경우 제대로 복제되지 않을 수 있습니다. 본질적으로 무작위로 생성된 결과는 예측할 수 없고 정확하게 재현할 수 없으므로 슬레이브에 복제된 임의 작업은 마스터에서 수행된 작업을 미러링하지 않습니다. 거래 유형 - 대용량 DML 작업(예:대량 삽입) 동안 오류가 발생하는 비트랜잭션 테이블은 DML 활동에서 마스터가 부분적으로

    16. 데이터베이스에 저장된 특정 MySQL 테이블의 세부 정보를 얻기 위해 저장 프로시저를 생성하시겠습니까?

      다음 예는 데이터베이스에 저장된 특정 테이블의 모든 세부 정보를 제공하는 tabledetails라는 프로시저를 생성합니다. 예시 mysql> DELIMITER // mysql> Create Procedure tabledetails()    -> BEGIN    -> DESCRIBE Student_detail;    -> END // Query OK, 0 rows affected (0.00 sec) mysql> DELIMITER ; mysql&g

    17. 테이블 이름을 MySQL 저장 프로시저의 매개변수로 전달하여 테이블의 모든 레코드를 어떻게 얻을 수 있습니까?

      테이블 이름을 저장 프로시저의 매개변수로 전달하여 테이블의 모든 레코드를 보려면 다음 예제에서 이름을 허용하는 details라는 프로시저를 생성합니다. 테이블을 매개변수로 - mysql> DELIMITER // mysql> Create procedure details(tab_name Varchar(40))    -> BEGIN    -> SET @t:= CONCAT('Select * from',' ',tab_name);    -&

    18. MySQL INTERVAL() 함수란 무엇입니까?

      MySQL INTERVAL() 함수는 첫 번째 인수보다 큰 인수의 인덱스 값을 반환합니다. 구문 INTERVAL(N,N1,N2,N3,…) 여기에서 이 함수는 첫 번째 인수인 N을 다른 인수(N1, N2, N3 등)와 비교합니다. 모든 인수는 정수로 처리됩니다. 다음과 같이 출력을 반환합니다 - N

    19. MySQL ISNULL() 함수와 IS NULL 연산자의 차이점은 무엇입니까?

      상당히 둘 다 ISNULL() 함수 및 IS NULL 연산자는 차이가 없으며 몇 가지 일반적인 동작을 공유합니다. 우리가 볼 수 있는 유일한 차이점은 구문에 있습니다. ISNULL() 함수는 표현식을 인수로 갖는 반면 IS NULL 비교 연산자의 왼쪽에 표현식이 있습니다. 그렇지 않으면 표현식이 NULL이면 둘 다 1을 리턴하고 표현식이 NULL이 아니면 0을 리턴합니다. 다음 예는 위의 개념을 보여줍니다 - mysql> Select 1 IS NULL; +-----------+ | 1 IS NULL | +-----------+

    20. INTERVAL() 함수의 첫 번째 인수가 NULL인 경우 MySQL이 반환하는 것은 무엇입니까?

      MySQL은 INTERVAL() 함수의 첫 번째 인수가 NULL인 경우 출력으로 -1을 반환합니다. 다음 예는 그것을 보여줄 것입니다 - 선택 간격(NULL,20,32,38,40,50,55);+-------------------------------------- ----------+| 간격(NULL,20,32,38,40,50,55) |+-------------------------------- ------+| -1 |+--------------------------------------+1 행 세트(0.00초) ) 다른 인수가 첫

    Total 4564 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:194/229  20-컴퓨터/Page Goto:1 188 189 190 191 192 193 194 195 196 197 198 199 200