2017-02-20 1 views
0

Visual Basic을 사용하여 항공기의 시간 수를 MySQL 데이터베이스에 입력하고 싶습니다. 예를 들어시간 삽입 mysql 데이터베이스

:

  • 항공기 X는 3158 가지고 25시간

이는 3,158시간25분 의미를 갖는다.

내 데이터베이스에 Number of HoursTime (형식)으로 선언했습니다.

문제

비주얼 스튜디오는 다음과 같은 오류를 반환한다는 것입니다 :

Incorrect time value: '3425:25' for column 'NbreHours' at row 1

+2

TIME 데이터 유형의 허용 범위를 벗어납니다. 매뉴얼 (https://dev.mysql.com/doc/refman/5.7/en/time.html)을 확인하십시오. 해당 분량의 세부 정보가 필요하면 총 시간 (초)을 계산하고이를 숫자로 저장하는 것이 좋습니다. 언제든지 다시 표시 할 수 있습니다. – ADyson

+1

정답을 선택하십시오. – user3378165

답변

1

3425:25nvarchar(10)NbreHours 컬럼의 형식을 변경, 올바른 Time 포맷하지 않고 그 문제를 해결할 것입니다.


hh:mm 형식으로 시간을 절약 할 수있는 의미있는 방법은 레코드의 전체 분을 계산 한 다음 int로 데이터베이스에 저장하는 것입니다.

우선 합 귀하의 기록의 총 분 :

string time = "3158:25:00"; 
double minutes= TimeSpan.Parse(time).TotalMinutes; 

는 그런 다음 int으로 데이터베이스에 minutes 변수를 저장합니다.

+0

시간대로 변환하는 방법 : 분 –

+1

시간이 * 숫자 *를 저장하는 데 nvarchar가 가장 적합한 유형인지 확인하십시오. –

+0

@ S.ElBahloul 데이터베이스에서 데이터를 가져올 때의 의미는 무엇입니까? 'hours : minutes'로 다시 변환 하시겠습니까? – user3378165

관련 문제