최근에 MySQL 쿼리 끝에서 세미콜론을 생략했는데 이것이 서버 고부하, 캐싱 등에서 발생할 수있는 부정적인 영향을 미칠 수 있다는 생각이 들었습니다. 그러한 영향이 있습니까?
해결 방법
시스템이 세미콜론없이 명령문의 끝을 알 수있는 경우이를 생략해도 해가되지 않습니다. 시스템이 혼란스러워지면 중요합니다. 당신이 그들을 떠날 수 있었기 때문에 분명히 문제는 없습니다. SQL을 작성하는 방법에 따라 많이 다릅니다. 예를 들어 PHP로 단일 명령문을 작성한 다음 처리를 위해 MySQL로 보내는 경우 세미콜론은 선택 사항입니다.
"서버 고부하, 캐싱 등에서 발생할 수있는 부정적인 영향을 미칠 수 있습니다." 대답은 '아니오'입니다. 효과가 있다면 그것은 당신이 의미하는 바에 대한 기본적인 해석에 달려 있으며, 그 차이는 거의 필연적으로 '작동 함'과 '실행은 고사하고 컴파일되지 않음'사이에 있습니다. 로드 또는 캐싱과 같은 효과는 세미콜론의 유무와는 완전히 독립적입니다.
이 답변은 상당히 일반적으로 적용됩니다. SQL Server에 세미콜론이 필요하지 않았지만 더 최신 버전에서 필요하도록 변경되고 있음을 나타내는 SQL Server 질문에 대한 참조가 있습니다. 대부분의 다른 DBMS에 적용됩니다. SQL 스크립트에서 작업하는 SQL 명령 인터프리터는 SQL 문 사이의 경계를 알아야합니다. 세미콜론은이를 나타내는 표준 방법이지만 다른 규칙이 있지만 일부는 go
를 사용하고 일부는 작업의 경우 슬래시 /
). 그러나 근본적으로 "작동합니까"로 귀결됩니다. 그렇다면 세미콜론이 필요하지 않습니다.
참조 페이지 https://stackoverflow.com/questions/17427629
'MySql' 카테고리의 다른 글
MySQL 오류! MySQL 관리자 또는 서버 PID 파일을 찾을 수 없습니다! QNAP (0) | 2020.12.29 |
---|---|
MySQL 데이터베이스에서 PHP로 여러 이미지를 표시하는 방법은 무엇입니까? (0) | 2020.12.29 |
MySQL 조인을 사용하지 않고 두 개의 다른 테이블에서 데이터 선택 (0) | 2020.12.29 |
MySQL 데이터베이스가 XAMPP를 시작하지 않습니다. (0) | 2020.12.29 |
MySQL : 다른 행의 데이터 스왑 (0) | 2020.12.29 |
댓글