2010-07-18 4 views
0

나는 또한 내 양식을 프랑스어로 설정했으며 ','을 사용하도록 텍스트 형식을 자동으로 변경합니다. 그러나 내 값을 데이터베이스에 삽입하려고하면 10 진수로 nvarchar를 변환 할 수 없다는 메시지가 나타납니다.데이터베이스에 프랑스어 (십진수) 저장?

최악의 경우, ','을 사용하도록 숫자가 변경되지 않도록 설정하고 '.'을 사용하면됩니다. 항상 언어와 상관없이?

내 작업 언어는 vb.net

입니다

감사합니다,

로버트

+0

어떤 데이터베이스 엔진 (예 : SQL Server)과 어떤 데이터 액세스 라이브러리 (예 : ADO.NET)입니까? – Jacob

+0

SQL Server는 내가 사용하고있는 것입니다 – Robert

답변

0

당신이 NVARCHAR로 데이터베이스에 아래로 값을 전달하는 경우에 당신은이 변환되어 있어야합니다 문자열은 yourDecimalValue.ToString(Globalization.CultureInfo.InvariantCulture) 또는 이와 유사한 문자를 사용합니다. SQL Server는 항상 십진수가 1.23 형식이어야합니다. WHERE myvalue IN (1,25, 1,33, 1,45)을 포함한 쿼리를 제출하면 문제가 발생할 것이라고 상상할 수 있습니다!

+0

또 다른 옵션은 쿼리 문자열을 직접 사용하지 않고 저장 프로 시저를 사용하는 것입니다. 매개 변수 값을 Decimal로 설정하고 Decimal없이 문자열 변환을 사용하면됩니다. –

+0

숫자를 소수점 이하로 유지하고 ","로 표시 할 수 있습니까? 보편적 인 환경입니까? – Robert

+0

어디에서 ","표시하고 싶습니까? 클라이언트 프로그램에서 - 아마도 나는 SQL에 전달되었을 때 - 아마도 그렇지 않을 것입니다. –