2011-11-04 4 views
0

시간 순서에 따라 특정 업로드를 주문하려고했으나 (내림차순) 도착했지만 PHP/SQL을 사용하여 제출 날짜와 시간을 기록하는 방법을 모르겠습니다. 저는이 프로젝트에 익숙하지 않고, 프로젝트를 수립하고 가능한 한 최선을 다해 학습합니다. 네가 나에게 줄 수있는 도움을 주셔서 감사합니다.녹음 시간/날짜 PHP 형식이 SQL 데이터베이스에 삽입 되었습니까?

편집 : 이러한 기능이 존재한다는 것을 알고 있으며, 어떻게 구현할 것인지 잘 모릅니다.

답변

1

MySQL은 레코드가 업데이트 될 때 자동으로 업데이트 될 수있는 TIMESTAMP 필드를 지원합니다.

DEFAULT CURRENT_TIMESTAMP을 지정하면 현재 시간이 새 레코드에 삽입됩니다. ON UPDATE CURRENT_TIMESTAMP도 지정하면 레코드가 갱신 될 때 시간 소인이 갱신됩니다. 그렇게하면 MySQL이 자동으로 시간을 기록 할 수 있습니다.

+0

는 그냥 테이블이 업데이트 될 때마다 로그인하거나겠습니까? – Reece

+0

다릅니다. DEFAULT CURRENT_TIMESTAMP는 TIMESTAMP 컬럼에 대해 지정된 경우 현재 레코드가 삽입 될 때 새 레코드에 현재 시간 소인을 삽입합니다. ON UPDATE CURRENT_TIMESTAMP는 갱신 된 레코드 필드를 갱신합니다. 둘 다 지정하지 않으면 TIMESTAMP를 유형으로 갖는 일반 열이지만 자동 삽입 또는 갱신은 수행되지 않습니다. – GolezTrol

+0

제가 링크 된 페이지는 TIMESTAMP 컬럼에 관한 문서와이 옵션들을 사용합니다. 몇 가지 제한 사항이 있습니다. 하나는 테이블 당 하나의 자동 업데이트 TIMESTAMP 필드 만 가질 수 있다고 생각합니다. – GolezTrol

0

당신은 날짜와 시간을 저장하기위한 열을 생성해야합니다.

created DATETIME DEFAULT NOW(), 
modified DATETIME DEFAULT NOW() 

전부 :

나는 종종 다음과 같은 두 개의 열을 사용합니다. 새 레코드를 삽입하면 MySQL은 자동으로 createdmodified을 현재 날짜와 시간으로 업데이트합니다.

그리고 당신이 그들의 작성 날짜 모든 업로드를 주문하려면 :

SELECT * FROM uploads ORDER BY created DESC 

참조 : 새 행이 삽입 될 때 http://sql-info.de/mysql/examples/CREATE-TABLE-examples.html#1_5

+0

바이트를 보려고하는 경우 DATETIME에 8 바이트가 필요하고 시간 소인에 4가 필요하므로 저장 용량이 2 배입니다. [참조] (http://www.gizmola.com/blog/archives/93 -Too-much-about-the-MySQL-TIMESTAMP.html) – gview

관련 문제