题目描述与处理策略
1、题目描述
- CREATE DATABASE my-shop-db;
复制代码
- CREATE DATABASE my-shop-db
- > 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-shop-db' at line 1
- # 翻译
- CREATE DATABASE my-shop-db
- SQL 语句语法有错误
- 请查看与 MySQL 服务版本对应的手册,以获取在第 1 行使用的正确语法
复制代码 2、题目缘故原由
- 在 MySQL 中创建一个名为 my-shop-db 的数据库失败,因为 my-shop-db 中包罗了不被允许的字符(此案例中为破折号 -)
- MySQL 的数据库名称有一些限定,通常只允许字母、数字、下划线(_),并且不能以数字开头
3、处理策略
- 将 my-shop-db 中的破折号 - 修改为下划线(_)
- CREATE DATABASE my_shop_db;
复制代码 增补学习
MySQL 数据库定名规则
(1)基本介绍
- 数据库名称只能包罗字母 a ~ z、A ~ Z、数字 0 ~ 9 和下划线 _
- 特别字符(例如,空格、破折号 -、@、井号 # 等)是不被允许的
- 在大多数操作系统上(例如,类 Unix 系统),MySQL 的数据库名称是区分巨细写的,但在 Windows 上,MySQL 的数据库名称默认不区分巨细写,因为 Windows 文件系统通常不区分巨细写
- 避免使用 MySQL 的保留字作为数据库名称
- 每个数据库名称在 MySQL 中必须是唯一的
(2)演示(反例)
- CREATE DATABASE my@shop@db;
复制代码- # 结果
- CREATE DATABASE my@shop@db
- > 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@shop@db' at line 1
复制代码
- 注意区分巨细写(此案例环境为 Windows 系统,在数据库 my_shop_db 存在的环境下创建数据库 my_shop_DB)
- CREATE DATABASE my_shop_DB;
复制代码- # 结果
- CREATE DATABASE my_shop_DB
- > 1007 - Can't create database 'my_shop_db'; database exists
复制代码- # 结果
- CREATE DATABASE select
- > 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'select' at line 1
复制代码
- 注意唯一性在数据库 my_shop_db 存在的环境下创建数据库 my_shop_db)
- CREATE DATABASE my_shop_db;
复制代码- # 结果
- CREATE DATABASE my_shop_db
- > 1007 - Can't create database 'my_shop_db'; database exists
复制代码 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |