문제SQL : 열 번호 형식/언어 변경 또는 포맷을 확인는
나는 남미에서 왔어요, 내가 내 PC에 SQL 서버를 설치하려고 할 때 나는 스페인어 버전을 설치하는 데 필요한되었다 요구 (스페인 형식), 그 때문에 컴퓨터 구성을 변경해야했습니다. (스페인) 스페인어 뭐가 문제
포맷?
글쎄, 그들은 소수 쉼표 ','대신 점의 지표로 사용한다. 그래서 4.5는이 형식으로 4,5입니다.
이것은 프로젝트에 어떤 영향을 줍니까? (ASP.NET 코어에서) :
내 국가의 대부분의 장치는 '정규 형식'(4.5)을 사용하며이 형식의 번호를 데이터베이스에 저장할 수없는 문제가 발생했습니다 : 데이터베이스가 요청하는 형식으로 어떤 종류의
- 는 어떻게 확인할 수 있습니다 4.5
그래서, 나는 몇 가지 질문이? (단지 이것이 문제인지를 확인하십시오)
- SQL 서버의 언어 구성을 변경하거나 데이터베이스에 필요한 숫자 형식을 변경하려면 어떻게합니까?
4.5
?CREATE TABLE [dbo].[Device] ( [DeviceID] INT IDENTITY (1, 1) NOT NULL, [DeviceName] NVARCHAR (MAX) NULL, [Id] INT NOT NULL, [InitialAmount] INT DEFAULT ((0)) NOT NULL, [DeviceStatus] INT DEFAULT ((0)) NOT NULL, [DeviceDateCreated] DATETIME2 (7) DEFAULT ('0001-01-01T00:00:00.000') NOT NULL, [StoreID] INT DEFAULT ((0)) NOT NULL, [MachineOwnerID] INT DEFAULT ((0)) NOT NULL, [CoinValue] REAL NOT NULL, [FechaPUnit] DATETIME2 (7) DEFAULT ('0001-01-01T00:00:00.000') NOT NULL, [PUnit] REAL NOT NULL, [SellType] NVARCHAR (MAX) NULL, CONSTRAINT [PK_Device] PRIMARY KEY CLUSTERED ([DeviceID] ASC), CONSTRAINT [FK_Device_Machine_Id] FOREIGN KEY ([Id]) REFERENCES [dbo].[Machine] ([Id]) ON DELETE CASCADE);
내가 가진 문제가 발생 테이블의 정의입니다.
이 문제
이 질문에 발견되었다 : Input(float) gets converted to integer while saving
를 다시 시작한 후에도 지속됩니다 (예를 들어, 'float' 또는'decimal')을 통해 * 문자열 *로 변환 할 때 사용되는 형식은 중요하지 않습니다. 이 문제는 거의 확실하게이 데이터를 하나 이상의 지점에서 문자열로 변환 한 다음 문자열이 적절한 데이터 형식으로 다시 변환 될 때 문제가 발생하는 것을 허용합니다. –
어떤 종류의 sql-server를 사용합니까? 어떤 버전입니까? 데이터베이스 레벨에서 containment type을 partial로 설정 한 다음 DB 레벨의 기본 언어를 변경할 수 있습니다. 이것을 SQL 명령으로 변경하는 데 사용하십시오. https://stackoverflow.com/questions/15705983/how-to-change-default-language-for-sql-server – plaidDK
@Damien_The_Unbeliever 확인해야하지만 암묵적인 것은 없다고 생각합니다. 이러한 변수에 대한 변환. 이전 프로젝트에서이 프로젝트의 정보를 게시했습니다 : https://stackoverflow.com/questions/47524571/inputfloat-gets-converted-to-integer-while-saving 이들은 프로젝트의 수레로 정의되어 있으며 양식을 작성하고 POST 조치를 사용하여 직접 저장하십시오. 통찰력을 좀 주시겠습니까? –