MySQL 註釋

Mehvish Ashiq 2023年1月30日
  1. MySQL 單行註釋
  2. MySQL 多行註釋
  3. MySQL 可執行檔案註釋
  4. まとめ
MySQL 註釋

在本文中,我們將介紹 MySQL 註釋。我們還將瞭解應該在哪裡使用什麼型別的註釋。

註釋寫的都是描述程式碼,方便理解。我們還使用註釋在解析 SQL 查詢時忽略程式碼的某一部分(不要讓那段程式碼被執行)。

它還可以幫助其他程式設計師瞭解程式碼中發生的事情。我們將看到如何在 MySQL 中使用單行和多行註釋。我們還將瞭解可執行註釋及其用途。

有三種不同的方式來編寫 MySQL 註釋。我們可以使用 #-/**/符號來註釋。

MySQL 單行註釋

我們可以通過兩種方式使用 MySQL 單行註釋,使用 #-

讓我們建立一個名為 tb_teachers 的表來練習 MySQL 註釋。我們使用 # 在下面給出的 MySQL 查詢中編寫單行註釋。

此註釋用在 SQL 查詢的末尾,並且後面必須有一個換行符。如果你在註釋後不使用換行符,則同一行中的所有內容都將被註釋,直到遇到換行符。不需要在 # 之後放置空格。但是在 # 後面留一個空格來增加可讀性是一個好方法。

使用 # 的 MySQL 示例程式碼:

# Following SQL query will create a table named 'tb_teachers'
CREATE TABLE `practice_mysql_comments`.`tb_teachers` (
 TEACHER_ID	INTEGER NOT NULL,
 FIRST_NAME	VARCHAR(30) NOT NULL,
 LAST_NAME	VARCHAR(30) NOT NULL,
 GENDER	VARCHAR(30) NOT NULL,
 CITY	VARCHAR(64) NOT NULL,
 EMAIL	VARCHAR(64) NOT NULL,
 JOINING_YEAR INTEGER NOT NULL,
 PRIMARY KEY	(TEACHER_ID)
);

請參閱以下程式碼示例,其中我們在使用單行註釋後不放置換行符。你可以看到 CREATE 命令也被部分註釋。

# Following SQL query will create a table named 'tb_teachers' CREATE TABLE `practice_mysql_comments`.`tb_teachers` (
 TEACHER_ID	INTEGER NOT NULL,
 FIRST_NAME	VARCHAR(30) NOT NULL,
 LAST_NAME	VARCHAR(30) NOT NULL,
 GENDER	VARCHAR(30) NOT NULL,
 CITY	VARCHAR(64) NOT NULL,
 EMAIL	VARCHAR(64) NOT NULL,
 JOINING_YEAR INTEGER NOT NULL,
 PRIMARY KEY	(TEACHER_ID)
);

我們也可以在 SQL 查詢中使用這種型別的註釋。請參閱以下程式碼;你可以觀察到我們可以在 SQL 查詢中使用 # 進行註釋。

# Following SQL query will create a table named 'tb_teachers' 
CREATE TABLE `practice_mysql_comments`.`tb_teachers` (
 TEACHER_ID	INTEGER NOT NULL, # teacher's id
 FIRST_NAME	VARCHAR(30) NOT NULL, # teacher's first name
 LAST_NAME	VARCHAR(30) NOT NULL, # teacher's last name
 GENDER	VARCHAR(30) NOT NULL, # teacher's gender
 CITY	VARCHAR(64) NOT NULL, # teacher's home town
 EMAIL	VARCHAR(64) NOT NULL, # teacher's email
 JOINING_YEAR INTEGER NOT NULL, # teacher's appointment year
 PRIMARY KEY (TEACHER_ID) # primay key of the teacher's table
);

讓我們探索使用 - 符號的另一種單行註釋方式。下面的 SQL 程式碼表明,即使在 SQL 查詢中,我們也可以使用雙 -(破折號)符號進行註釋。

這與我們使用 # 符號進行註釋相同,只有一個區別。我們必須在第二個破折號之後放置至少一個空格;否則,它不會作為註釋。

-- Following SQL query will create a table named 'tb_students' 
CREATE TABLE `practice_mysql_comments`.`tb_students` (
 STUDENT_ID	INTEGER NOT NULL, -- student's id
 FIRST_NAME	VARCHAR(30) NOT NULL, -- student's first name
 LAST_NAME	VARCHAR(30) NOT NULL, -- student;s last name
 GENDER	VARCHAR(30) NOT NULL, -- student's gender
 CITY	VARCHAR(64) NOT NULL, -- student's home town
 EMAIL	VARCHAR(64) NOT NULL, -- student's email
 REGISTRATION_YEAR INTEGER NOT NULL, -- student's registration year
 PRIMARY KEY (STUDENT_ID) -- primay key of the student's table
);

MySQL 多行註釋

如果我們需要詳細解釋 SQL 查詢以使程式碼易於理解,我們使用多行註釋。 /* */ 中的所有內容都將被忽略。是否在此類註釋的末尾放置換行符都沒關係,但最好有一個換行符來編寫乾淨且有條理的程式碼。

/* 
Following SQL query will create a table named 'tb_students'
having the basic information about the students. This information includes
full name, gender, city, email and registration year.
*/
CREATE TABLE `practice_mysql_comments`.`tb_students` (
 STUDENT_ID	INTEGER NOT NULL, 
 FIRST_NAME	VARCHAR(30) NOT NULL, 
 LAST_NAME	VARCHAR(30) NOT NULL, 
 GENDER	VARCHAR(30) NOT NULL, 
 CITY	VARCHAR(64) NOT NULL, 
 EMAIL	VARCHAR(64) NOT NULL,
 REGISTRATION_YEAR INTEGER NOT NULL, 
 PRIMARY KEY (STUDENT_ID) 
);

雖然我們可以把多行註釋當成單行來處理,但是為什麼我們有單行註釋還要增加工作量呢。當你不想執行多於一行時,最好使用多行註釋。請參閱以下示例。

/* 
Following SQL query will create a table named 'tb_students'
having the basic information about the students. This information includes
full name, gender, city, email and registration year.
*/
CREATE TABLE `practice_mysql_comments`.`tb_students` (
 STUDENT_ID	INTEGER NOT NULL, 
 FIRST_NAME	VARCHAR(30) NOT NULL, 
 LAST_NAME	VARCHAR(30) NOT NULL, 
 GENDER	VARCHAR(30) NOT NULL, 
 CITY	VARCHAR(64) NOT NULL, 
 /* EMAIL	VARCHAR(64) NOT NULL,
 REGISTRATION_YEAR INTEGER NOT NULL, */
 PRIMARY KEY (STUDENT_ID) 
);

MySQL 可執行檔案註釋

MySQL 還支援可執行註釋。這種型別的註釋為你提供了在各種資料庫之間的可移植性。這些註釋中編寫的程式碼只會在 MySQL 中執行。如果你在 ! 之後指定版本字元,它只適用於那個特定的 MySQL 版本 或更高版本。

可執行註釋的示例程式碼:

SELECT 3 /*! *2 */ AS MULTIPLICATION;

まとめ

我們已經得出結論,MySQL 註釋在程式設計時起著至關重要的作用。它是什麼型別的程式設計並不重要。如果你必須忽略多行,使用多行註釋是一個不錯的選擇;否則,單行註釋就可以了。如果你希望僅在 MySQL 伺服器上執行某段程式碼,則可以使用 MySQL 可執行註釋。

作者: Mehvish Ashiq
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook