한 데이터베이스의 테이블에서 다른 데이터베이스로 데이터 복사
기본적으로 SQL Server 2005에는 두 개의 데이터베이스가 있습니다.
한 데이터베이스에서 테이블 데이터를 가져와 다른 데이터베이스의 테이블에 복사하려고 합니다.
시도해 봤습니다.
SELECT * INTO dbo.DB1.TempTable FROM dbo.DB2.TempTable
이거 안 됐어요.
데이터 손실을 방지하기 위해 복원을 사용하고 싶지 않습니다...
아이디어 있어요?
SELECT... INTO가 새 테이블을 만듭니다.INSERT를 사용해야 합니다.또한 데이터베이스와 소유자 이름이 반대로 되어 있습니다.
INSERT INTO DB1.dbo.TempTable
SELECT * FROM DB2.dbo.TempTable
선택 * INTO를 선택하려면 대상 테이블이 존재하지 않아야 합니다.
이거 먹어봐요.
INSERT INTO db1.dbo.TempTable
(List of columns here)
SELECT (Same list of columns here)
FROM db2.dbo.TempTable
db1.dbo입니다.TempTable 및 db2.dbo.온도 테이블
4부 명명 체계는 다음과 같습니다.
서버 이름.데이터베이스 이름.스키마.물건
"그것은 효과가 없었습니다"라는 것이 무슨 뜻인지 전혀 알지 못하고 말하기 어렵습니다.잘못될 수 있는 것은 매우 많습니다. 이러한 경로 중 하나를 해결할 때 NAT이 제공하는 조언은 솔루션을 찾는 것에서 점점 더 멀어질 수 있습니다. 이는 매우 단순할 수 있습니다.
하지만 여기 제가 찾고 싶은 것이 있습니다.
테이블에 ID 필드가 포함되어 있고 수동으로 제공하는 경우 가져올 테이블에 ID 삽입이 있어야 합니다.또한 ID 삽입은 데이터베이스에서 한 번에 하나의 테이블에 대해서만 사용 가능으로 설정될 수 있으므로 테이블에 대해 사용 가능으로 설정한 후 가져오기가 완료되면 즉시 사용 불가능으로 설정해야 합니다.
또한 모든 필드를 나열해 보십시오.
INSERT INTO db1.user.MyTable (Col1, Col2, Col3)
SELECT Col1, COl2, Col3 FROM db2.user.MyTable
database_name과 같이 이름을 세 부분으로 나눌 수 있습니다.object_name
아래 쿼리는 테이블을 데이터베이스에 만듭니다(제한 없음).
SELECT *
INTO DestinationDB..MyDestinationTable
FROM SourceDB..MySourceTable
또는 다음을 수행할 수 있습니다.
INSERT INTO DestinationDB..MyDestinationTable
SELECT * FROM SourceDB..MySourceTable
대상 테이블이 존재하고 비어 있는 경우.
삽입하는 것을 잊지 마십시오.SET IDENTITY_INSERT MobileApplication1 ON
맨 위로 이동하지 않으면 오류가 발생합니다.SQL Server용입니다.
SET IDENTITY_INSERT MOB.MobileApplication1 ON
INSERT INTO [SERVER1].DB.MOB.MobileApplication1 m
(m.MobileApplicationDetailId,
m.MobilePlatformId)
SELECT ma.MobileApplicationId,
ma.MobilePlatformId
FROM [SERVER2].DB.MOB.MobileApplication2 ma
저는 이것이 더 좋습니다.
INSERT INTO 'DB_NAME'
(SELECT * from 'DB_NAME@DB_LINK')
MINUS
(SELECT * FROM 'DB_NAME');
그 말은 그 안에 포함되지 않은 것을 삽입할 것이라는 것을 의미합니다.DB_NAME
하지만 포함된DB_NAME@DB_LINK
도움이 되길 바랍니다.
INSERT INTO DB1.dbo.TempTable
SELECT * FROM DB2.dbo.TempTable
이 쿼리를 사용하면 반환됩니다.Primary key error
따라서 이동할 열을 선택하는 것이 좋습니다. 예를 들어,
INSERT INTO db1.dbo.TempTable // (List of columns here)
SELECT (Same list of columns here)
FROM db2.dbo.TempTable
사용해 보세요.
INSERT INTO dbo.DB1.TempTable
(COLUMNS)
SELECT COLUMNS_IN_SAME_ORDER FROM dbo.DB2.TempTable
이것은 dbo에 있는 항목인 경우에만 실패합니다.DB2.TempTable이 이미 dbo에 있습니다.DB1.TempTable.
성공적으로 작동합니다.
INSERT INTO DestinationDB.dbo.DestinationTable (col1,col1)
SELECT Src-col1,Src-col2 FROM SourceDB.dbo.SourceTable
일부 열을 추가하더라도 한 테이블을 다른 db 테이블에 복사할 수 있습니다.
insert into [SchoolDb1].[dbo].Student(Col1, Col2,Col3, CreationTime, IsDeleted)
select Col1, Col2,Col3,,getdate(),0 from [SchoolDb2].[dbo].Student
다음은 추가 열입니다. (작성)시간은 데이터 시간이고 IsDeleted는 부울 시간입니다.)
select * from DBA1.TABLENAMEA;
create table TABLENAMEA as (select * from DBA1.TABLENAMEA);
이러한 수동 방식은 더 많은 유연성을 제공하지만 동시에 크기가 수천 개로 더 작은 테이블에서도 사용할 수 있습니다.
도select * from <table name>
DB에서 전체 테이블이 표시되면 맨 아래까지 스크롤합니다.
마우스 오른쪽 단추를 클릭하여 수행Export table as Insert statement
대상 테이블의 이름을 제공하고 테이블을 .sql 파일로 내보냅니다.
하여 정기적으로 합니다.find and replace
더 많은 열 이름을 포함하는 작업 등.
을 합니다.INSERT
문이 대상 DB에 있습니다.
언급URL : https://stackoverflow.com/questions/940930/copy-data-from-a-table-in-one-database-to-another-separate-database
'programing' 카테고리의 다른 글
기본 단순 Asp.net + jQuery + JSON 예제 (0) | 2023.08.10 |
---|---|
JavaScript: 매 분마다 실행할 코드 가져오기 (0) | 2023.08.10 |
iOS 10에서 카메라 및 라이브러리에 대한 권한 요청 - Info.plist (0) | 2023.08.10 |
에뮬레이터에서 Android 응용 프로그램이 실행 중일 때 어떻게 감지할 수 있습니까? (0) | 2023.08.10 |
특정 워크시트에서 Excel 파일 열기 (0) | 2023.08.10 |