복붙노트

[SQL] 어떻게 MySQL은 현재 날짜 및 시간을 얻으려면?

SQL

어떻게 MySQL은 현재 날짜 및 시간을 얻으려면?

내가 현재 날짜와 시간을 삽입하는 수동 쿼리에서 사용할 수있는 DATETIME 같은 값 또는 명령이 있습니까?

INSERT INTO servers (
  server_name, online_status, exchange, disk_space, network_shares
) VALUES(
  'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE' 'DATETIME' 
)

내가 현재 날짜와 시간을 추가 할 위치 끝에 인용 DATETIME 값입니다.

해결법

  1. ==============================

    1.당신은) (NOW 사용할 수 있습니다 :

    당신은) (NOW 사용할 수 있습니다 :

    INSERT INTO servers (server_name, online_status, exchange, disk_space, network_shares, c_time)
    VALUES('m1', 'ONLINE', 'exchange', 'disk_space', 'network_shares', NOW())
    
  2. ==============================

    2.사용 CURRENT_TIMESTAMP () 또는 NOW ()

    사용 CURRENT_TIMESTAMP () 또는 NOW ()

    처럼

    INSERT INTO servers (server_name, online_status, exchange, disk_space,
    network_shares,date_time) VALUES('m1','ONLINE','ONLINE','100GB','ONLINE',now() )
    

    또는

    INSERT INTO servers (server_name, online_status, exchange, disk_space,
    network_shares,date_time) VALUES('m1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE'
    ,CURRENT_TIMESTAMP() )
    

    당신은 시간을 삽입하는 데 사용할 열 이름으로 DATE_TIME를 교체합니다.

  3. ==============================

    3.많은 허용 답변이있다하더라도,이 방법도 가능하다고 생각 :

    많은 허용 답변이있다하더라도,이 방법도 가능하다고 생각 :

    다음과 같이 '서버의 테이블을 만듭니다

    CREATE TABLE `servers`
    (
          id int(11) NOT NULL PRIMARY KEY auto_increment,
          server_name varchar(45) NOT NULL,
          online_status varchar(45) NOT NULL,
          _exchange varchar(45) NOT NULL, 
          disk_space varchar(45) NOT NULL,
          network_shares varchar(45) NOT NULL,
          date_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
    );
    

    그리고 당신의 INSERT 문이 있어야합니다 :

    INSERT INTO servers (server_name, online_status, _exchange, disk_space, network_shares)
    VALUES('m1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE');
    

    내 환경 :

    코어 4GB의 RAM과 윈도우 노트북을 I3, 나는 MySQL의 워크 벤치 6.2 (버전 6.2.5.0 빌드 397 64 비트)에 위의 예제를했다

  4. ==============================

    4.예, CURRENT_TIMESTAMP () 명령을 사용할 수 있습니다.

    예, CURRENT_TIMESTAMP () 명령을 사용할 수 있습니다.

    여기를 참조하십시오 : 날짜 및 시간 함수

  5. ==============================

    5.

    INSERT INTO servers (server_name, online_status, exchange, disk_space, network_shares)
    VALUES('m1','ONLINE','exchange','disk_space','network_shares', NOW())
    
  6. ==============================

    6.데이터베이스 설계에서 iIhighly 일관성과 색인 / 검색 / 비교 성능을 Unixtime를 사용하는 것이 좋습니다.

    데이터베이스 설계에서 iIhighly 일관성과 색인 / 검색 / 비교 성능을 Unixtime를 사용하는 것이 좋습니다.

    UNIX_TIMESTAMP() 
    

    하나는 항상 개별적으로 가장 편리한로 국제화, 이후 사람이 읽을 수있는 형식으로 변환 할 수 있습니다.

    FROM_ UNIXTIME (unix_timestamp, [format ])
    
  7. ==============================

    7.당신이 CURRENT_TIMESTAMP에 디폴트 값 변경을 할 경우 더 효율이다

    당신이 CURRENT_TIMESTAMP에 디폴트 값 변경을 할 경우 더 효율이다

    ALTER TABLE servers MODIFY COLUMN network_shares datetime NOT NULL DEFAULT CURRENT_TIMESTAMP;
    
  8. ==============================

    8.정답은 SYSDATE ()이다.

    정답은 SYSDATE ()이다.

    INSERT INTO servers (
        server_name, online_status, exchange, disk_space,
        network_shares, date_time
    )
    VALUES (
        'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE', SYSDATE()
    );
    

    우리는이 동작을 변경할 수 있으며, 메이크업 True로 sysdate_is_now 명령 행 인수를 설정하여 SYSDATE ()와 같은 방법으로 NOW ()없이 행동을 MYSQL.

    참고 (별칭으로 CURRENT_TIMESTAMP ()를 가지고) NOW (), 미묘한 방법으로 SYSDATE 다르다 () :

    Erandi에 의해 표시된 바와 같이 열이 새 행을 삽입 타임 스탬프와 함께 자동으로 채워 가도록 (듯이),이 DEFAULT 절을 사용하여 테이블을 생성하는 것이 좋습니다 :

    date_time datetime NOT NULL DEFAULT SYSDATE()
    

    당신은 시대의 형식으로 현재 날짜를 원한다면, 당신은 UNIX_TIMESTAMP ()을 사용할 수 있습니다. 예를 들면 :

    select now(3), sysdate(3), unix_timestamp();
    

    얻을 것이다

    +-------------------------+-------------------------+------------------+
    | now(3)                  | sysdate(3)              | unix_timestamp() |
    +-------------------------+-------------------------+------------------+
    | 2018-11-27 01:40:08.160 | 2018-11-27 01:40:08.160 |       1543282808 |
    +-------------------------+-------------------------+------------------+
    

    관련 :

  9. ==============================

    9.당신은 또한 ()와 LOCALTIMESTAMP ()을 CURRENT_TIMESTAMP) 만 지금 (안 사용할 수 있습니다. 잘못 표시되는 타임 스탬프의 주된 이유는 작은 따옴표와 NOW () 삽입됩니다! )는 MySQL의 기능에 작은 따옴표를 추가하기 때문에이 IDE의 MySQL의 워크 벤치에 나를 위해 일을하지 않았다 그리고 난 한 번에 인식하지 않았다

    당신은 또한 ()와 LOCALTIMESTAMP ()을 CURRENT_TIMESTAMP) 만 지금 (안 사용할 수 있습니다. 잘못 표시되는 타임 스탬프의 주된 이유는 작은 따옴표와 NOW () 삽입됩니다! )는 MySQL의 기능에 작은 따옴표를 추가하기 때문에이 IDE의 MySQL의 워크 벤치에 나를 위해 일을하지 않았다 그리고 난 한 번에 인식하지 않았다

    MySQL의 워크 벤치처럼 작은 따옴표와 기능을 사용하지 마십시오. 그것은 작동하지 않습니다.

  10. ==============================

    10.

    $rs = $db->Insert('register',"'$fn','$ln','$email','$pass','$city','$mo','$fil'","'f_name','l_name=','email','password','city','contact','image'");
    
  11. from https://stackoverflow.com/questions/19246309/how-to-get-current-date-time-in-mysql by cc-by-sa and MIT license