SQL 2005에서 두 개의 테이블을 만들고 데이터로 채우는 프로젝트가 있습니다. 날씨에 대한 조회 테이블은 남성의 이름이거나 여성의 이름입니다) 나는 삽입 할 남성 7354 명과 삽입 할 여성 7776 명을 가진다.SQL 2005에 매우 많은 행 삽입하기
현재 나는
CREATE TABLE #NamesMale (
[FirstName] [varchar](50) NOT NULL,
[MaxRank] [smallint] NULL)
CREATE TABLE #NamesFemale (
[FirstName] [varchar](50) NOT NULL,
[MaxRank] [smallint] NULL)
insert into #NamesMale select 'AADEN',343
insert into #NamesMale select 'AAPELI',1000
insert into #NamesMale select 'AAPO',1000
... (snip ~7300 lines)
insert into #NamesMale select 'ZVONIMIR',1000
insert into #NamesMale select 'ZVONKO',1000
insert into #NamesMale select 'ZYGMUNT',1000
insert into #NamesFemale select 'AALIYAH',64
insert into #NamesFemale select 'AAREN',1000
insert into #NamesFemale select 'AARON',873
... (snip ~7700 lines)
insert into #NamesFemale select 'ZUZANA',1000
insert into #NamesFemale select 'ZUZANNA',1000
insert into #NamesFemale select 'ZVONIMIRA',1000
그것은 현재 내 컴퓨터에 이름을로드 십사초 1 분 소요이이 분야에서 사용되는 위치 서버가 자주 내 dev에 비해 훨씬 강력 할 것 할 기계.
별도의 대량 복사 파일을 사용하는 것은 옵션이 아닙니다. 솔루션은 전적으로 transact-sql이어야하며 한 파일에 있어야합니다. 바람직하게는 sql2000과의 호환성을 손상시키지 않는 솔루션을 원합니다. 그러나 이는 요구 사항이 아닙니다.
도움을 주시면 감사하겠습니다.
GO 문이 없으면 전체가 하나의 트랜잭션으로 실행됩니다. GO 문을 사용하면 일련의 작은 트랜잭션으로 실행됩니다. 아마도 작은 트랜잭션에서 큰 트랜잭션 (잠금 등)의 오버 헤드가 줄어들 것입니다. –