首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MYSQL选择时间戳数据未检索的位置

问MYSQL选择时间戳数据未检索的位置
EN

Stack Overflow用户
提问于 2014-03-11 09:52:44
回答 2查看 70关注 0票数 0

我有如下mysql表;

代码语言:javascript
复制
CREATE TABLE IF NOT EXISTS `cheque_data` (
`auto_no` int(11) NOT NULL AUTO_INCREMENT,
`job_no` int(11) NOT NULL,
`client_id` text NOT NULL,
`ch_no` text NOT NULL,
`ch_date` date NOT NULL,
`ch_bank` text NOT NULL,
`ch_amount` decimal(10,2) NOT NULL,
`sync` int(1) NOT NULL DEFAULT '0',
`timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
 PRIMARY KEY (`auto_no`)
 )

当我在PHPMYADMIN中运行SQL命令时,它将检索行;

代码语言:javascript
复制
SELECT * FROM `cheque_data` WHERE timestamp='2014-03-10 19:37:31'.

但在PHP中,

代码语言:javascript
复制
$sql = "select * from `cheque_data` where timestamp = '2014-03-10 19:37:31'";
$result_remote = mysqli_query($con,$sql) or die(mysqli_error($con));
$row_count = mysqli_num_rows($result_remote);
echo $row_count; //no data

它没有提供任何数据。但是,当我将时间戳更改为其他列时,它可以工作。

代码语言:javascript
复制
$sql = "select * from `cheque_data` where auto_no = '1'";
$result_remote = mysqli_query($con,$sql) or die(mysqli_error($con));
$row_count = mysqli_num_rows($result_remote);
echo $row_count; //data found

我想知道,这个问题的原因是什么?它只是不使用where时间戳

谢谢你,萨梅拉

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-11 10:15:09

在时间戳字段周围添加backticks(`),因为它是保留字或使用此查询

代码语言:javascript
复制
$sql = "select * from `cheque_data` where `timestamp` = '2014-03-10 19:37:31'";
票数 0
EN

Stack Overflow用户

发布于 2014-03-11 10:12:00

可能是PHP脚本中的问题,而不是MySQL。请记住,最好用`包装列名,不要混淆MySQL。在您的声明中,这是可以的,但是fyi有一个名为TIMESTAMP()的函数,在某些情况下,MySQL可能会将非工作的column name视为function name。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22322092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档