插入unix时间和特殊符号

时间:2017-07-15 22:30:32

标签: mysql

尝试运行此查询 -

INSERT INTO rmedvedeva993@gmail.com  (url,unix) 
    VALUES (@https://youtu.be/xXsuqrhD8pw,@1500152563.66077);

在阅读了这个问题之后,尝试了这样的数据库 - rmedvedeva993@gmail.com

收到错误:

  

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以便在'://youtu.be/xXsuqrhD8pw,@1500152563.66077附近使用正确的语法。'在第1行

不太清楚这里的问题是什么,

P.S。:我的列格式为char(255)

`

2 个答案:

答案 0 :(得分:1)

@hhttps://youtu.be/xXsuqrhD8pw@1500152563.66077无效。

电子邮件地址也不是表格的名称。如果您必须使用电子邮件地址作为表名,请将其括在反引号中。但是想想你为什么要这么做,然后不要这么做。

您可能想要VALUES ('https://youtu.be/xXsuqrhD8pw',1500152563.66077);

MySQL的结构化查询语言中的@符号表示用户定义的变量。所以你可以这样:

 @url := 'https://youtu.be/xXsuqrhD8pw';
 @ts := 1500152563.66077;
 INSERT INTO table  (url,unix) VALUES  (@url,@ts);

答案 1 :(得分:0)

您需要引用stringschar(xx)varchar(xx)或任何其他表示为string的类型;并且,当您的表名不仅仅是字母和数字时,您必须使用backtick引号引用它们:`。您很可能不会使用@符号。

INSERT INTO `rmedvedeva993@gmail.com`  (url,unix) 
   VALUES ('https://youtu.be/xXsuqrhD8pw','1500152563.66077');

旁注:您的表名是否真的命名为rmedvedeva993@gmail.com?您可以发布表格定义(使用SHOW CREATE TABLE table_name)。