在mysql数据库中存储逗号

时间:2010-10-05 01:47:42

标签: php sql mysql escaping

我正在尝试将日期存储在sql表中,但我想将其格式化为:

月,日 2010年10月10日 但每当我进行sql调用时,2010都会丢失。我该如何解决这个问题?

$eventdate = "October 10, 2010";
$sql = "INSERT INTO `tims`.`blog` ( `title`, `date`, `post`, `author`, `approved`) \n"
            . "VALUES (
                '" . mysql_real_escape_string($_REQUEST['title'])     . "',
                '" . mysql_real_escape_string(addslashes($eventDate)) . "',
                '" . mysql_real_escape_string($_REQUEST['TextArea1']) . "',
                '" . mysql_real_escape_string($_REQUEST['author'])    . "', 'False')\n";

//echo $sql;
$qry = mysql_query($sql) or die(mysql_error());

2 个答案:

答案 0 :(得分:3)

我同意其余部分,您必须使用表格中的日期列进行记录,然后您必须在应用程序中显示它,您只需格式化检索日期,如“2010年10月10日”。请不要将日期存储为varchar文本,关系数据库具有为您存储日期的简单性,使用SQL您可以格式化日期,无论如何您希望显示它。

答案 1 :(得分:1)

检查列宽。您需要VARCHAR(n)作为该列的数据类型,并且n需要是年份最长月份名称的长度+ 9.如果您想要进行索引或排序,以这种方式存储日期并不是一个好主意他们,但它应该工作。

要查看表格结构:

show create table `tims`.`blog`;