MS는 OleDb를 단계적으로 제거하고 다른 데이터베이스로 쉽게 이식 할 수 있도록 SQL Server 2012와 함께 ODBC를 사용하려고합니다.C# datetime to ODBC 날짜/시간 변환 오류
ERROR [22008] [Microsoft][SQL Server Native Client 11.0]Datetime field overflow. Fractional second precision exceeds the scale specified in the parameter binding.
좋아 나는 그런 종류의를 얻을 : 나는 날짜를 저장하려고 할 때 나는 다음과 같은 오류가 ODBC 데이터 액세스 클래스를 사용하려고하면
문제이다. C#은 ODBC 매개 변수가 사용하고자하는 것보다 높은 수준의 정밀도를가집니다. 나는 ODBC 구현이 초의 분수를 좋아하지 않는다는 것을 알고 있지만, datetime 정밀도를 보존하기위한 해결 방법은 무엇입니까?
감사합니다,
딘스 대일
편집 :
String Name = "created";
DateTime DateTimeValue = DateTime.Now;
OdbcCommand cmd = new OdbcCommand();
cmd.CommandType = request.CommandType;
cmd.CommandText = request.Command;
OdbcParameter param;
param = new OdbcParameter(Name, OdbcType.DateTime);
param.Value = DateTimeValue;
cmd.Parameters.Add(param);
이 코드는 다음과 같은 오류 발생 : 자 여기에 원래 매개 변수 생성자 ERROR [22008]가 [마이크로 소프트] [SQL 서버 Native Client 11.0] 날짜/시간 필드 오버플로. 부분 초 정밀도는 매개 변수 바인딩에 지정된 비율을 초과합니다.
수정 프로그램과 같이 확장 된 생성자를 사용하는 것입니다
param = new OdbcParameter(Name, OdbcType.DateTime, 23, System.Data.ParameterDirection.Input, false, 0, 3, Name, DataRowVersion.Current, DateTimeValue);
다시 한번 감사 Kumod에! 딘스 대일은
당신이 이러한 오류가 발생하는 통화를 사용하는 방법의 예를 보여줄 수있다? –