programing

ID 열을 사용하여 가져오기 및 내보내기 마법사

i4 2023. 6. 25. 18:23
반응형

ID 열을 사용하여 가져오기 및 내보내기 마법사

ID 열 값을 이전 DB에 유지하면서 데이터를 한 DB에서 다른 DB로 이동하고 싶습니다.마법사를 실행하면 "읽기 전용 열 "채널에 삽입 실패"라는 유효성 검사 오류가 표시됩니다.신분증".

채널 위치ID는 해당 테이블의 ID 열입니다.데이터를 가져올 수 있도록 ID 기능을 재정의하려면 어떻게 해야 합니까?

ID 삽입을 활성화해야 합니다.매핑 편집을 클릭하면 확인란이 나타납니다.

Byte56의 답변이 정확합니다. 매핑 편집 화면에서 "ID 삽입 사용"을 선택합니다.소스 테이블 및 보기 선택 목록은 다중 선택을 지원하므로 Shift 또는 Ctrl 키를 누른 상태에서 목록에서 여러 테이블을 선택할 수 있습니다.

매핑 편집에서 ID 삽입 사용을 선택합니다.그런 다음 SQL 편집 버튼을 클릭합니다.

바꾸다

[MyID] int NOT NULL,

안으로

[MyID] int IDENTITY(1,1),

MS Access 데이터베이스 가져오기에서 작동합니다.이렇게 하면 자동 번호 필드의 데이터가 ID 열로 변환되는 상태가 유지됩니다.

사용해야 합니다.SET IDENTITY INSERT ONIDENTITY 열에 값을 삽입할 수 있습니다.

여기 MSDN 링크가 있습니다.

SSMS 2008 R2를 사용하는 SQL Server 2008 R2.

단순히 "매핑 편집"에서 ID를 활성화하는 것만으로는 identity=true가 유지되지 않습니다.테이블별로 수동으로 sql을 편집하고 sql 코드에 IDENTITY 속성을 포함시켜야 합니다.

예: ADD MS_IDEND 숫자(18,0) IDITY NULL이 아닙니다.

방금 SQL Server Management Studio 2017로 업그레이드했습니다.매핑 편집 대화 상자에서 "ID 사용" 확인란을 선택했지만 작동하지 않았습니다.기존 테이블을 업데이트할 때 마법사에서 SQL을 편집할 수 없습니다.대신 하드 드라이브에 패키지로 저장할 수 있었습니다.그런 다음 "아이덴티티"를 검색하면서 메모장에서 파일을 편집했습니다.아니나 다를까, 속성이 true로 설정되었습니다. 이는 파일 자체의 주석에 따르면 ID 열의 값이 원본에서 복사되었음을 의미합니다.false로 변경하면 대상에서 값이 자동으로 생성됩니다.이게 도움이 되길 바랍니다.

저는 이것에 대한 해결책을 찾기 위해 시간을 보냈습니다.

300개 이상의 테이블이 있는 액세스 데이터베이스가 있으며 SSMS2017 가져오기 도구를 사용하여 각 테이블의 구성을 수동으로 편집하지 않고 기본 키와 자동 번호를 유지할 수 없습니다.좋지 않습니다..

결국 저는 bullzip(MS Access to MSSQL)에서 만든 도구를 사용하여 액세스에서 mssql로 변환할 수 있습니다(MySQL에 액세스하기 위한 도구도 있음).

도구가 작업을 수행합니다. 작은 테이블이 있는 경우 스크립트로 삭제하거나 서버로 직접 이동합니다.

모든 신분증은 온전하고, 자동 번호도 안에 있습니다.

일이 끝난

언급URL : https://stackoverflow.com/questions/5893575/import-and-export-wizard-with-identity-column

반응형