excel 데이터를 sql 서버에 가져온 후 디지털 형식이 올바르지 않은 문제를 해결하는 방법

1335 단어 데이터베이스
오늘은 excel 표에 있는 데이터를 sql 서버에 가져와야 합니다.excel 표 직원.xls에는 소속 부서, 직원의 번호, 직원 이름 세 열의 데이터가 저장되어 있습니다.구글은 이후 다음과 같은 해결 방법을 얻었지만 디지털 전환이 적합하지 않은 문제에 부딪혔다.먼저 이 방법을 말해 보세요.
우선: excel의 직원 번호라는 열을 텍스트 형식으로 바꾸고 데이터베이스에 새 테이블employee를 만듭니다.
IF EXISTS (SELECT * FROM sysobjects WHERE name='employee' AND xtype='u')
  DROP TABLE employee

CREATE TABLE employee(
  Agency nvarchar(50),
  EmployeeId nvarchar(50) not null,
  EmployeeName nvarchar(50)
)
GO

ALTER TABLE employee
ADD CONSTRAINT pk_insurance_employeeid PRIMARY KEY(EmployeeId)
GO

그리고: sql 문장을 사용하여 excel 테이블의 데이터를 상기 테이블에 가져옵니다.
INSERT INTO employee(Agency,EmployeeId,EmployeeName)
select   as Agency,   as EmployeeId,   as EmployeeName
from  opendatasource('Microsoft.Jet.OLEDB.4.0',
  'Excel 5.0;HDR=YES;IMEX=1;DATABASE=d:\\employee.xls'
)...[sheet1$]
-- excel 1322186030624, [1322186030624$] 
-- sheet1 , 
GO 

직원 번호는 130입니다.XXXXXXXXXXXXXXXXXXXX 같은 십여 자리의 숫자는 가져온 후에 130이 된다.XXXXXXXXXXXXXXXXXX.0 이렇게.인터넷에서도 좋은 해결책을 찾지 못했다.
이 글은 Excel에서 데이터를 가져올 때 SQL Server 공식의 자동 형식 판단 규칙에 대해 설명합니다.http://www.cnblogs.com/frostcity/archive/2008/03/07/1095484.html
또한 이 excel을'텍스트 파일 (탭 구분)'형식으로 저장한 다음 sqlserver에서 가져오고 가져오는 데 성공한 후에 데이터 형식을 수정하고 제약을 추가하는 가장 간단한 방법을 제시했다.나도 이런 방법을 통해 이루어졌다.

좋은 웹페이지 즐겨찾기