如何从一个数据库中获取数据并将其插入到另一个数据库表格中?我无法实现这个。请帮助我将数据从一个数据库传输到另一个数据库。
如何从一个数据库中获取数据并将其插入到另一个数据库表格中?我无法实现这个。请帮助我将数据从一个数据库传输到另一个数据库。
有几种方法可以做到这一点,以下是两个选项:
选项1 - 右键单击要复制的数据库
选择 '任务' > '生成脚本'
'选择特定数据库对象'
勾选 '表'
标记 '保存到新查询窗口'
点击 '高级'
将 '要脚本化的数据类型' 设置为 '架构和数据'
下一步,下一步
现在您可以在新数据库上运行生成的查询。
选项2
右键单击要复制的数据库
'任务' > '导出数据'
下一步,下一步
选择要将表复制到的数据库
标记 '从一个或多个表或视图复制数据'
选择要复制的表
完成
将一个数据库表中的插入值示例插入到运行在同一SQL Server上的另一个数据库表中
insert into dbo.onedatabase.FolderStatus
(
[FolderStatusId],
[code],
[title],
[last_modified]
)
select [FolderStatusId], [code], [title], [last_modified]
from dbo.Twodatabase.f_file_stat
onedatabase.dbo.FolderStatus
е’Ң Twodatabase.dbo.f_file_stat
гҖӮжҲ–иҖ…дҪ еҸҜд»ҘдҪҝз”Ё ..
з¬ҰеҸ·пјҢе°ұеғҸ @AdamHey жҢҮеҮәзҡ„йӮЈж ·гҖӮ - bugybunny如果您使用Azure,请按照Virus的修改后的说明进行操作:
select * into anotherDatabase..copyOfTable from oneDatabase..tableName
您可以将光标放在sysobjects的顶部,然后以这种方式复制整个表集。
如果您需要更复杂的数据提取和转换,则可以使用SSIS并在其中构建适当的ETL。
您能否澄清一下为什么要询问这个问题?是因为您没有经验还是其他原因?
这些解决方案适用于目标数据库为空的情况。如果两个数据库都已经有一些数据,你就需要使用更复杂的方法。http://byalexblog.net/merge-sql-databases
如果您知道FROM
子句可以为表名指定数据库,那么可以通过T-SQL语句实现此操作。
insert into database1..MyTable
select from database2..MyTable
以下是 Microsoft 解释语法的方式: https://learn.microsoft.com/en-us/sql/t-sql/queries/from-transact-sql?view=sql-server-ver15
如果表或视图存在于 SQL Server 的另一个数据库中,请使用完全限定名称,格式为
database.schema.object_name
。
schema_name
可以被省略,就像上面一样,这意味着当前用户的默认模式。默认情况下,它是dbo
。
如果需要对列/行进行任何过滤,请确保在移动数据之前创建任何新表。
在两个不同的数据库之间以编程方式执行此操作可能涉及使用链接服务器的计划作业。但是,链接服务器需要具备DBA级别的知识才能设置。如果您无法使用链接服务器,只需编写一个程序,该程序1.从源表中读取一行并2.将其插入目标表中。程序员只需要使用具有对目标数据库表进行插入操作权限的连接字符串即可。我已经使用这两种方法解决了这些问题。