programing

DateTime 데이터베이스 필드를 "지금"으로 설정합니다.

sourcejob 2023. 4. 19. 22:58
반응형

DateTime 데이터베이스 필드를 "지금"으로 설정합니다.

VB.net 코드에서는 SQL 파라미터로 요청을 만듭니다.DateTime 파라미터를 DateTime 값으로 설정합니다.이제 제 요청은 어떻게 될까요?

UPDATE table SET date = "2010/12/20 10:25:00";

또는

UPDATE table SET date = GETDATE();

첫 번째 경우에는 모든 기록이 정확히 같은 시간으로 설정될 것이라고 확신합니다.두 번째 경우 DBMS가 요청을 처리하는 방법에 따라 달라집니다.두 번째 질문으로 이어집니다.SQL Server는 큰 테이블을 NOW()로 갱신할 때 동일한 날짜와 시간을 설정합니까?

EDIT : NOW() (SQL Server에는 존재하지 않음)를 GETDATE()로 바꿉니다.

SQL에서는 를 사용해야 합니다.GETDATE():

UPDATE table SET date = GETDATE();

거기에는 없다NOW()기능.


질문에 답하려면:

큰 테이블에서는 각 행에 대해 함수가 평가되므로 업데이트된 필드에 대해 다른 값을 얻을 수 있습니다.

따라서 모든 것을 같은 날짜로 설정해야 하는 경우 다음과 같은 작업을 수행합니다(테스트되지 않음).

DECLARE @currDate DATETIME;
SET @currDate = GETDATE();

UPDATE table SET date = @currDate;

GETDATE() 대신 CURRENT_TIMESTamp를 사용할 수 있습니다.동일한 작업을 수행합니다.

GETDATE() 사용

현재 데이터베이스 시스템 타임스탬프를 데이터베이스 시간대 오프셋이 없는 날짜/시간 값으로 반환합니다.이 값은 SQL 서버 인스턴스가 실행 중인 시스템의 운영 체제에서 파생됩니다.

UPDATE table SET date = GETDATE()

테이블에 행을 추가하고 현재 날짜와 시간으로 업데이트해야 할 값이 하나 필요한 경우 - now()를 사용하십시오. 예를 들어 actor 값(202',ALIA', 'BHATT', now();

언급URL : https://stackoverflow.com/questions/4488383/set-a-datetime-database-field-to-now

반응형