跨数据库的视图如何创建呢
我想在一个库里建个视图,这个视图要从另一个库的表里取字段,如何能够实现呢,希望给些详细的操作指南ORACLE数据库...
我想在一个库里建个视图,这个视图要从另一个库的表里取字段,如何能够实现呢,希望给些详细的操作指南
ORACLE数据库 展开
ORACLE数据库 展开
5个回答
展开全部
有多种方法啊。介绍其中一种,使用mysql数据库的ODBC驱动。步骤:
1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.23-win32.msi(其中*是版本号),下载并安装。
2.在Mysql中创建数据库实例。
3.打开控制面板 -- 管理工具 -- 数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源。
4.在登录login选项卡中输入数据源名称Data Source Name,此处输入MysqlDNS(也可以自己随便命名,只要在后面导入数据的时候选择正确的数据源名字就行);然后输入服务器Server,用户User,密码Password,输入正确后选择要导入的数据库,Database选择你需要导入的数据库。在连接选项connect options中根据需要设置MySql使用的端口port和字符集Character Set。
注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到Sql Server可能会出现问号乱码。
5.打开sql server企业管理器,选择该数据库,单击右键选择所有任务 -- 导出数据。
6.‘选择数据源’为默认,‘选择目的’为刚刚安装的mySQL数据源,用户/系统DSN为MysqlDNS。在‘指定表复制或查询’中选择‘从源数据库复制表和视图’,在‘选择源表和视图’里,选择需要导入的表,即可将数据从MSSQLServer数据库导入到MySql数据库中。
1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.23-win32.msi(其中*是版本号),下载并安装。
2.在Mysql中创建数据库实例。
3.打开控制面板 -- 管理工具 -- 数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源。
4.在登录login选项卡中输入数据源名称Data Source Name,此处输入MysqlDNS(也可以自己随便命名,只要在后面导入数据的时候选择正确的数据源名字就行);然后输入服务器Server,用户User,密码Password,输入正确后选择要导入的数据库,Database选择你需要导入的数据库。在连接选项connect options中根据需要设置MySql使用的端口port和字符集Character Set。
注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk,否则导入到Sql Server可能会出现问号乱码。
5.打开sql server企业管理器,选择该数据库,单击右键选择所有任务 -- 导出数据。
6.‘选择数据源’为默认,‘选择目的’为刚刚安装的mySQL数据源,用户/系统DSN为MysqlDNS。在‘指定表复制或查询’中选择‘从源数据库复制表和视图’,在‘选择源表和视图’里,选择需要导入的表,即可将数据从MSSQLServer数据库导入到MySql数据库中。
展开全部
如果在同一个服务器中的不同数据库,可以跨数据库建视图。
比如有两个数据库A 和B B数据库中有个表TA
那么可以在A数据库中建个视图,取自B数据库中表TA中的数据
use A
go
creat view B_TA as
select * from B..TA
go
这样就在A数据库中建一个视图B_TA 数据取自B数据库中TA表
比如有两个数据库A 和B B数据库中有个表TA
那么可以在A数据库中建个视图,取自B数据库中表TA中的数据
use A
go
creat view B_TA as
select * from B..TA
go
这样就在A数据库中建一个视图B_TA 数据取自B数据库中TA表
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是什么数据库
如果是同一个机器上的话,直接用户名.表就可以了
如果不同机器的数据库的话,oracle是建立DB_LINK,网上一找就有
如果是同一个机器上的话,直接用户名.表就可以了
如果不同机器的数据库的话,oracle是建立DB_LINK,网上一找就有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
很简单,只需要在查询语句前指定数据库名了
比如有两个数据库, db1与db2,
db1中有一个表table1(field1,field2)
db2中有一个表table2(field2,field3)
查询语句:
select db1.dbo.table1.field1,db1.dbo.table1.field2,
db2.dbo.table2.field2,db2.dbo.table2.field3
from db1.dbo.table1 as a,db2.dbo.table2 as b
on a.field2=b.field2
上面只针对同一台机上的不同二个库,如果是远程的,则需要考虑用链接服务器(SQL SERVER),oracle的楼上的已说了用DB_LINK
比如有两个数据库, db1与db2,
db1中有一个表table1(field1,field2)
db2中有一个表table2(field2,field3)
查询语句:
select db1.dbo.table1.field1,db1.dbo.table1.field2,
db2.dbo.table2.field2,db2.dbo.table2.field3
from db1.dbo.table1 as a,db2.dbo.table2 as b
on a.field2=b.field2
上面只针对同一台机上的不同二个库,如果是远程的,则需要考虑用链接服务器(SQL SERVER),oracle的楼上的已说了用DB_LINK
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不会
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询