我有一個包含約10條記錄的查找表,我知道我可以將結構腳本編寫爲文本文件,但是如何將數據腳本編寫爲插入命令?如何編寫我的表以生成INSERT INTO命令?
1
A
回答
2
假設SQL Server ...
SQL Management Studio將生成一個插入腳本。用鼠標右鍵單擊您的數據庫,然後選擇任務 - 導出數據
+0
請注意,這是從版本2008開始支持的 – Madhivanan 2011-06-20 08:03:05
2
這取決於你所使用的工具相當多...
2
的快速和骯髒的方法是運行一個選擇爲一個字符串,並告訴SQL企業管理器給你的文字(不是網格)作爲輸出
SELECT 'INSERT INTO表(此字段)VALUES(' +字段1 + '' ....
5
十的記錄,它的急嗎?
只需進行手動輸入。應該很易於切割 - 粘貼。
2
做這樣的事情:
select "insert into my_targ_table(my_field_1, my_field_2, ..., my_field_n) values(" || x.my_field_1_col || ", " || x.my_field_2_col || ");"
from my_source_table x
然後只需運行你生成的腳本。
+0
我有同樣的想法,只有28秒後。 – recursive 2009-10-26 16:35:47
1
該代碼可以使用所有表
DECLARE @TblName varchar(128)
DECLARE @WhereClause varchar(255)
DECLARE @cmd1 varchar(7000)
DECLARE @cmd2 varchar(7000)
SET @TblName = '<tablename>' --Name of your table
SET @WhereClause = ' ' --where clause ex columnA = 1
SET @cmd1 = 'SELECT '' INSERT INTO ' + @TblName + ' ('
SET @cmd2 = ' + '' VALUES ('' + '
create table #tableDef (id int identity (1,1), ColType int, ColName varchar(128))
--Fetch column names and datatypes
insert #tableDef (ColType, ColName)
select case when DATA_TYPE like '%char%' then 1
when DATA_TYPE like '%datetime%' then 2
else 0 end ,
COLUMN_NAME
from information_schema.columns
where TABLE_NAME = @TblName
order by ORDINAL_POSITION
SELECT @cmd1 = @cmd1 + ColName + ',',
@cmd2 = @cmd2
+ ' CASE WHEN ' + ColName + ' IS NULL '
+ ' THEN ''NULL'' '
+ ' ELSE '
+ case ColType
when 1 then ''''''''' + ' + ColName + ' + '''''''''
when 2 then ''''''''' + ' + 'CONVERT(VARCHAR(20),' + ColName + ')' + ' + '''''''''
else 'CONVERT(VARCHAR(20),' + ColName + ')' end
+ ' END + '','' + '
from #tableDef
order by id
select @cmd1 = left(@cmd1,len(@cmd1)-1) + ') '' '
select @cmd2 = left(@cmd2,len(@cmd2)-8) + '+'')'' FROM ' + @tblName + @WhereClause
select '/*' + @cmd1 + @cmd2 + '*/'
exec (@cmd1 + @cmd2)
drop table #tableDef
相關問題
- 1. 是否可以爲單個列表編寫「insert into」語句?
- 2. 使用INSERT INTO命令插入數據。
- 3. PHP處理MySQL INSERT INTO命令
- 4. INSERT INTO命令不起作用
- 5. INSERT INTO命令不起作用
- 6. 使用Gridview完成SQL「INSERT INTO」命令並
- 7. INSERT INTO表由
- 8. java.sql.SQLSyntaxErrorException:ORA-00933:SQL命令未正確結束以進行INSERT INTO SELECT
- 9. 如何在進程中編寫命令生成器
- 10. 如何INSERT INTO JOIN
- 11. 如何在PHP中編寫SQL INSERT命令
- 12. 如何將INSERT INTO ... SELECT轉換成MongoDB
- 13. 如何解決MySQL INSERT INTO ... SELECT導致SELECTed表的寫鎖定?
- 14. 如何編寫DB2命令
- 15. 如何編寫SQL'case'命令?
- 16. PL/pgSQL INSERT INTO表
- 17. 「INSERT INTO」輸出表?
- 18. INSERT VS INSERT INTO
- 19. 如何生成多行生成命令?
- 20. INSERT INTO表值.. VS INSERT INTO表中設置錯誤
- 21. 如何編寫生成另一個指令的AngularJS指令?
- 22. INSERT INTO VS SELECT INTO
- 23. N'INSERT INTO與INSERT INTO
- 24. ORACLE SQL INSERT INTO - 如何前
- 25. 哪一個很好寫MySql INSERT INTO命令獲得大量數據?
- 26. INSERT INTO ... SELECT,如果目標列具有生成列
- 27. SQL INSERT INTO - 我很困惑
- 28. 我應該如何編寫我的ssh代理命令?
- 29. SQL - 錯誤:INSERT INTO表
- 30. INSERT INTO表不起作用?
您正在使用什麼數據庫管理系統? – 2009-10-26 16:33:28
一些示例數據和關於該數據應該發生什麼的詳細描述將爲您提供有用的答案。 – dnagirl 2009-10-26 16:33:43
可能的重複[導出數據在SQL Server中作爲INSERT INTO](http://stackoverflow.com/questions/1515969/exporting-data-in-sql-server-as-insert-into) – Flexo 2011-12-31 04:03:17