当我尝试下一步时
mysql> CREATE TABLE '20181020';
sql返回错误:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual
that corresponds to your MariaDB server version for the right syntax to use
near ''20181020'' at line 1
我该如何解决?
答案 0 :(得分:1)
您无需在标识符中加上反引号:
CREATE TABLE `20181020`(id INT);
我建议不要这样做,并使用适当的有意义的命名。使用date作为表名建议它可以是按日期的表反模式。
答案 1 :(得分:1)
对于这种类型的表名,您也可以使用双引号
<a class="portfolio-item" href="">
<img src="{% static 'proj/img/portfolio8.jpg' %}"/>
</a>
但是这种命名方式不是标准做法
答案 2 :(得分:0)
其他答案涵盖解决方案,即使用反引号。
让我补充一点,使用非标准标识符不是一个好主意。如果您也开始将列命名为数字,那么谁想找出20181020.1
,20181020
。1
和20181020.1
之间的区别。使用前缀t_20181020
这么难吗?
但是您也不想这样做。让我解释。据推测,如果您有一个名为20181020
的表,那么明天您将需要另一个表20181021
。这是一个非常糟糕的数据库设计。
您应该将所有数据放入一个表中,并用date
列指定日期。然后,您可以对一个表运行查询,以查看随时间的变化-例如。
如果表很大,并且您希望能够分别处理每一天,则可以使用表分区分别存储每一天的价值。这很方便,因为可以独立于其他分区来存档,还原和删除分区。