讓我們爲了討論說,在的MS Access選擇..到MS訪問SQL Server相當於
select id, value into newtable
from oldtable
我有以下查詢我需要複製,在SQL服務器存儲過程 它會如下:
Delete newtable if exists
Create newtable
Copy values
還是有另一種方法呢?
讓我們爲了討論說,在的MS Access選擇..到MS訪問SQL Server相當於
select id, value into newtable
from oldtable
我有以下查詢我需要複製,在SQL服務器存儲過程 它會如下:
Delete newtable if exists
Create newtable
Copy values
還是有另一種方法呢?
如果表不存在,你會怎麼做:
select id, value
into newtable
from oldtable;
如果該表確實存在:
drop table newtable;
select id, value
into newtable
from oldtable;
是否顯示了複製select..into行爲的確切步驟?我不太在意語法(儘管感謝它) – Eminem
@Eminem。 。 。兩個數據庫中「select into」的語法都是相同的。你的代碼不需要改變。 –
如果您已遷移的舊錶到SQL服務器,使用在你的程序中使用腳本。
IF EXISTS (SELECT 1
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'NewTable')
BEGIN
DROP TABLE NewTable
END
SELECT ID,VALUE INTO NewTable FROM OldTable.
的EXISTS子句將檢查並刪除newtable中如果你的數據庫已經存在了。在SQL Server中編寫表格存在檢查的方法有很多種,您可以按照其中任何一種方式進行。
IF OBJECT_ID (N'NewTable', N'U') IS NOT NULL
DROP TABLE NewTable
OR
IF EXISTS(SELECT 1 FROM sys.Objects WHERE Object_id = OBJECT_ID(N'dbo.NewTable') AND Type = N'U')
BEGIN
DROP TABLE NewTable
END
'SELECT * INTO ...'是SQL Server兼容的語法。 – Parfait