📜  mysql 数据库连字符 - SQL (1)

📅  最后修改于: 2023-12-03 14:44:29.978000             🧑  作者: Mango

MySQL 数据库连字符 - SQL

在 MySQL 数据库中,我们通常使用横线(-)作为连字符。连接符必须用于标识符中,例如表名、列名、存储过程名等。

表名连接符

在 MySQL 数据库中,表名和列名可以包含 ASCII 字符集中的任何字符。然而,只有一些字符被认为是安全的,并且可以在不使用转义符的情况下使用。

如果您使用的是非安全字符,则必须使用反单引号()将表名或列名括起来。例如,在创建一个名为 employee-details` 的表时,您应该使用以下语法:

CREATE TABLE `employee-details` (
  `id` INT(11) NOT NULL auto_increment,
  `first_name` VARCHAR(255) NOT NULL,
  `last_name` VARCHAR(255) NOT NULL,
  PRIMARY KEY  (`id`)
);

请注意,表名和列名之间使用的连接符是横线(-),而不是下划线(_)。

存储过程名连接符

存储过程名中的连接符也是横线(-)。例如,以下是使用横线来创建一个名为 get_employee_details 的存储过程的示例:

CREATE PROCEDURE get_employee_details(IN emp_id INT)
BEGIN
  SELECT * FROM employee_details WHERE id = emp_id;
END;
SQL语句中的连接符

在 SQL 查询语句中使用连接符时,您可以直接使用横线(-)来表示表和列名。例如,以下是一个查找所有姓 Doe 的雇员的 SQL 查询语句的示例:

SELECT * FROM employee-details WHERE last_name = 'Doe';

请注意,查询语句中使用的表名和列名与创建表时使用的名称相同,它们都包含了连接符。

总结

使用连接符可以使表名、列名和存储过程名中包含非安全字符成为可能。在 MySQL 数据库中,横线(-)被视为连接符。在表名、列名和存储过程名中使用横线需要使用反单引号括起来,而在 SQL 查询语句中直接使用即可。