當前位置:首頁 » 編程語言 » sql表間移動數據
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql表間移動數據

發布時間: 2022-04-22 02:50:35

sql 一個表中的數據怎麼導入到另一個表裡

1、創建兩張測試表,

create table test_imp1(id number, value varchar2(20));

create table test_imp2(id number, value varchar2(20));

㈡ SQL語句 怎麼把一個表的數據復制到另外一個表裡面

SQL語句把一個表的數據復制到另外一個表裡面的步驟:

1、打開SQL,登錄到一個資料庫中,依次點擊「工具」——「導出表」,在彈出的界面中選擇一個用戶,列出這個用戶下面的所有表。

㈢ 怎麼將SQL中一個表的內容復制(或移動)到另一個表中去。(兩個表的欄位不一樣)

一回事啊 insert into table_name1(col1,col2、、、) select col1,col2,、、、,from table_name2;

㈣ SQL資料庫的遷移方法有多少

本文介紹五種遷移SQL資料庫的方法,包括DTS設計器導入導出、利用備份和恢復、直接拷貝數據文件、在應用程序中定製和SQL Server的復制功能。

DTS設計器導入導出
DTS的設計器功能強大,支持多任務,也是可視化界面,容易操作,但知道的人一般不多,如果只是進行SQL Server資料庫中部分表的移動,用這種方法最好,當然,也可以進行全部表的移動。在SQL Server Enterprise Manager中,展開伺服器左邊的+,選擇資料庫,右擊,選擇All tasks/Import Data...(或All tasks/Export Data...),進入向導模式,按提示一步一步走就行了,裡面分得很細,可以靈活的在不同數據源之間復制數據,很方便的。而且可以另存成DTS包,如果以後還有相同的復制任務,直接運行DTS包就行,省時省力。也可以直接打開DTS設計器,方法是展開伺服器名稱下面的Data Transformation Services,選Local Packages,在右邊的窗口中右擊,選New Package,就打開了DTS設計器。
值得注意的是:如果源資料庫要拷貝的表有外鍵,注意移動的順序,有時要分批移動,否則外鍵主鍵,索引可能丟失,移動的時候選項旁邊的提示說的很明白,或者一次性的復制到目標資料庫中,再重新建立外鍵,主鍵,索引。
利用備份和恢復
先對源資料庫進行完全備份,備份到一個設備(device)上,然後把備份文件復制到目的伺服器上(恢復的速度快),進行資料庫的恢復操作,在恢復的資料庫名中填上源資料庫的名字(名字必須相同),選擇強制型恢復(可以覆蓋以前資料庫的選項),再選擇從設備中進行恢復,瀏覽時選中備份的文件就行了。這種方法可以完全恢復資料庫,包括外鍵,主鍵,索引。
直接拷貝數據文件
把資料庫的數據文件(*.mdf)和日誌文件(*.ldf)都拷貝到目的伺服器,在SQL Server Query Analyzer中用語句進行恢復:
EXEC sp_attach_db @dbname = ';test';,
@filename1 = ';d:mssql7datatest_data.mdf';,
@filename2 = ';d:mssql7datatest_log.ldf';
這樣就把test資料庫附加到SQL Server中,可以照常使用。如果不想用原來的日誌文件,可以用如下的命令:
EXEC sp_detach_db @dbname = ';test';
EXEC sp_attach_single_file_db @dbname = ';test';,
@physname = ';d:mssql7datatest_data.mdf';
這個語句的作用是僅僅載入數據文件,日誌文件可以由SQL Server資料庫自動添加,但是原來的日誌文件中記錄的數據就丟失了。
在應用程序中定製
可以在應用程序(PB、VB)中執行自己編寫的程序,也可以在Query Analyzer中執行,這種方法比較靈活,其實是利用一個平台連接到資料庫,在平台中用的主要是SQL語句,這種方法對資料庫的影響小,但是如果用到遠程鏈接伺服器,要求網路之間的傳輸性能好,一般有兩種語句:
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
區別是前者把數據插入一個新表(先建立表,再插入數據),後者是把數據插入已經存在的一個表中,我個人喜歡後者,因為在編程的結構上,應用的范圍上,第二條語句強於前者。
SQL Server的復制功能
SQL Server提供了強大的數據復制功能,也是最不易掌握的,具體應用請參考相關資料,值得注意的是要想成功進行數據的復制工作,有些條件是必不可少的:
1)SQL Server Agent必須啟動,MSDTC必須啟動。
2)所有要復制的表必須有主鍵。
3)如果表中有text或image數據類型,必須使用with log選項,不能使用with no_log選項。
另外max text repl size選項控制可以復制的文本和圖像數據的最大規模,超過這個限制的操作將失敗。
4)在要進行復制的計算機上,應該至少是隱含共享,即共享名是a1、b1…。
5)為SQL Server代理使用的Windows Server賬號不能是一個本地的系統賬號,因為本地的系統賬號不允許網路存取。

㈤ SQL資料庫如何把一個資料庫中的表移動復制到另一個資料庫中

用SQL語句實現就是
select *
into StudentManager
form cd.StudentManager
用資料庫導入導出功能亦可,或者直接把資料庫的數據文件(*.mdf)和日誌文件(*.ldf)都拷貝目標資料庫,然後在新資料庫中載入。

㈥ 請問sql中如何在兩個資料庫間數據轉移

必須是AB資料庫在同一個伺服器上:
insert into B..table(col2) select col1 from A..table
如果沒在同一個伺服器上,如伺服器M和N,就這樣:
insert into N.B.DBO.table(col2) select col1 from M.A.DBO.table;

㈦ sql 把一個表的數據 移到另一個表

一:如果要插入目標表不存在:
select
*
into
目標表
from

where
...
二:如果要插入目標表已經存在:
insert
into
目的表
select
*
from

where
條件
三:如果是跨資料庫操作的話:
怎麼把A資料庫的atable表所查詢的東西,全部插入到B
資料庫的btable表中
select
*
into
B.btable
from
A.atable
where
...
最後提示一下
,跨伺服器也是可以的

㈧ SQL SERVER中,如何把一個表中的數據導入到另一個表中(不同資料庫之間的表導入)

不同資料庫之間的表導入方法:

1:選擇目標資料庫——滑鼠右鍵——任務——導入數據。

2:配置資料庫來源

7:選擇下一步,完成。

(8)sql表間移動數據擴展閱讀:

SQL導入語句

1、如果要導出數據到已經生成結構(即現存的)FOXPRO表中,可以直接用下面的SQL語句

insert into openrowset('MSDASQL',

'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=c:',

'select * from [aa.DBF]')

select * from 表

說明:

SourceDB=c: 指定foxpro表所在的文件夾

aa.DBF 指定foxpro表的文件名.

2、導出到excel

EXEC master..xp_cmdshell 'bcp SettleDB.dbo.shanghu out c: emp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""'

3、/** 導入文本文件

EXEC master..xp_cmdshell 'bcp dbname..tablename in c:DT.txt -c -Sservername -Usa -Ppassword'

㈨ sql 兩張表之間傳遞數據

createtablet1(
idnumberprimarykey,
namevarchar(30),
countnumber
);

createtablet2(
idnumberprimarykey,
namevarchar(30),
countnumber
);

--創建一個復制數據的存儲過程,根據表1的記錄id,復制該記錄到表2
createorreplaceprocere_test(
IDint1.id%type
)is
t1_idt1.id%type;
t1_namet1.name%type;
t1_countt1.count%type;
begin
t1_id:=ID;
selectt1.name,t1.countintot1_name,t1_countfromt1wheret1.id=t1_id;
insertintot2values(t1_id,t1_name,t1_count);
commit;
end;


insertintot1values(1,'aaa',6);--給t1添加一條數據
call_test(1);--調用存儲過程

insertintot1values(5,'AAA',6);--給t1添加一條數據
call_test(5);--調用存儲過程

然後你會發現t2裡面有了相同的數據。

㈩ 如何用代碼把SQL資料庫中表的數據轉移到另一張表中,轉出後原來的就沒有了。

假設A表是原來的表,B表是要轉的表
如果你想轉出後的數據完全是A表的數據,且B表結構和A表一樣
你可以這樣

select * from A
into B
go

drop Table A
go
這個就順利的把A表刪除,並且數據全部到B表
如果只是轉出一部分可以,並在A表中刪除者部分數據
select * from A
into B
where 你的條件
go

delete from A
where 條件要和上面的一樣就可以了
go
3。如果你的B表是本來存在的,且裡面已經有數據了
你只能
insert into B(Field1,Field2,...)
select Field1,Field2,....
from A
where 條件(如果是全部A表數據可沒有條件)
go
delete from A
where 條件(如果是全部A表數據可沒有條件)
go
不知道樓主到底是什麼意思,我的回答是否能給樓主點啟發