通过SQL进行远程访问

通过SQL语句访问远程数据库

1、得建立链接服务器:
 --删除链接服务器
 if exists(select * from master.dbo.sysservers where isremote=0 and srvname=‘ITSV‘)
  exec sp_dropserver ‘ITSV‘,‘droplogins‘
 
 --创建连接服务器
 exec sp_addlinkedserver ‘ITSV‘,‘‘,‘SQLOLEDB‘,‘10.2.10.211‘
 exec sp_addlinkedsrvlogin ‘ITSV‘,‘false‘,null,‘retailBI‘,‘retail‘
2、建立完链接服务器后,便可通过其来任意操作远程的数据库啦。
--查询示例
select * from ITSV.数据库名.dbo.表名
--PK
select * from sys.key_constraints where object_id = OBJECT_ID(‘TB‘)
--FK
select * from sys.foreign_keys where parent_object_id =OBJECT_ID(‘TB‘)
--创建链接服务器
exec sp_addlinkedserver   ‘ITSV ‘, ‘ ‘, ‘SQLOLEDB ‘, ‘远程服务器名或ip地址 ‘
exec sp_addlinkedsrvlogin ‘ITSV ‘, ‘false ‘,null, ‘用户名 ‘, ‘密码 ‘
--查询示例
select * from ITSV.数据库名.dbo.表名
--导入示例
select * into 表 from ITSV.数据库名.dbo.表名
--以后不再使用时删除链接服务器
exec sp_dropserver  ‘ITSV ‘, ‘droplogins ‘
--连接远程/局域网数据(openrowset/openquery/opendatasource)
--1、openrowset
--查询示例
select * from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)
--生成本地表
select * into 表 from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)
--把本地表导入远程表
insert openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)
select *from 本地表
--更新本地表
update b
set b.列A=a.列A
from openrowset( ‘SQLOLEDB ‘, ‘sql服务器名 ‘; ‘用户名 ‘; ‘密码 ‘,数据库名.dbo.表名)as a inner join 本地表 b
on a.column1=b.column1
--openquery用法需要创建一个连接
--首先创建一个连接创建链接服务器
exec sp_addlinkedserver   ‘ITSV ‘, ‘ ‘, ‘SQLOLEDB ‘, ‘远程服务器名或ip地址 ‘
--查询
select *
FROM openquery(ITSV,  ‘SELECT *  FROM 数据库.dbo.表名 ‘)
--把本地表导入远程表
insert openquery(ITSV,  ‘SELECT *  FROM 数据库.dbo.表名 ‘)
select * from 本地表
--更新本地表
update b
set b.列B=a.列B
FROM openquery(ITSV,  ‘SELECT * FROM 数据库.dbo.表名 ‘) as a 
inner join 本地表 b on a.列A=b.列A
--3、opendatasource/openrowset
SELECT   *
FROM   opendatasource( ‘SQLOLEDB ‘,  ‘Data Source=ip/ServerName;User ID=登陆名;Password=密码 ‘ ).test.dbo.roy_ta
设置SQL Server定时执行命令

1、打开对象资源管理器,找到SQL Server代理

2、新建作业

3、在作业属性—>常规项中填上作业名称和描述信息

在作业属性—>步骤项中类型为Transact-SQL脚本(T-SQL)的命令,如EXEC sp_Procedure(如果有多个步骤,注意保证上一个步骤成功后转到下一步)

在作业属性—>计划项为命令执行设置定时等

4、确定。

5、启动SQL Server Agent

时间: 2024-12-28 05:16:14

通过SQL进行远程访问的相关文章

关于sql server远程访问Oracle数据库 OpenQuery查询返回多条数据的问题

在Sql Server远程访问Oracle 中的数据库表时: 远程语法通常为: select * from OpenQuery(Oracle链接服务器名称,‘查询语句’) eg: select * from OPENQUERY(QTX,'select * from student') 有些情况下只会返回student表一条数据 第一条 解决方法:数据源ODBC中 选择系统DNS 时,新建系统数据源 选择的对应驱动应该为Oracle Instant Client Dricver  这个驱动需要安装

SQL Server2012远程访问第二个实列

现在有一台A电脑和一台B电脑,A是公司的服务器,安装了两个数据库实例(Sql Server 2012 和Sql Server2008 R2),B电脑在家,安装了Sql Server数据库两台电脑不在一个局域网(我们考虑的是不同网络的两台数据库连接),比如A电脑在公司,B电脑在家里,现在我要在家里用B电脑连接到公司的A电脑里的数据库. 以下以Sql Server 2008 R2设置为例,Sql Server 2012设置类似(侦听端口不同). 首先,我们要将设置A电脑的Sql Server端口,使

配置PL/SQL DEVELOPER远程访问oracle数据库

1.要想使用PL/SQL需要先安装oracle客户端(这个是必须的,要不然plsql就用不了,这个客户端可以去oracle官网上下载,名字叫instance client,尽量用较新的版本就可以了,windows版的大的也就50多M,还有精简版的20多M,地址:http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html,挑个适合你的系统的版本的.) oracle客户端的安装很简单,直接

sql server2012 远程访问设置(转)

转自:http://blog.csdn.net/xiadingling/article/details/8215282 步骤 打开SQL server2012,使用windows身份登录 登录后,右键选择“属性”.左侧选择“安全性”,选中右侧的“SQL Server 和 Windows 身份验证模式”以启用混合登录模式 选择“连接”,勾选“允许远程连接此服务器”,然后点“确定” 展开“安全性”,“登录名”;“sa”,右键选择“属性” 左侧选择“常规”,右侧选择“SQL Server 身份验证”,

sql server远程访问Oracle数据库

在sql server上新建了连接服务器后 在指定的链接服务器上执行指定的传递查询. 该服务器是 OLE DB 数据源. OPENQUERY 可以在查询的 FROM 子句中引用,就好象它是一个表名. OPENQUERY 也可以作为 INSERT.UPDATE 或 DELETE 语句的目标表进行引用. 但这要取决于 OLE DB 访问接口的功能. 尽管查询可能返回多个结果集,但是 OPENQUERY 只返回第一个. Transact-SQL 语法约定 语法 复制 OPENQUERY ( linke

SQL Server2012远程访问设置(适用于2008)

SQL2008或者SQL2012出现未开启远程连接的错误.下面总结了下开启的方法. 1.打开SQL server2012,使用windows身份登录 2.登录server后,右键"属性".左侧选择"安全性",选中右侧的"SQL Server 和 Windows 身份验证模式"以启用混合登录模式 3.选择左侧的"连接",勾选"允许远程连接此服务器",然后点"确定" 4.展开"安全

如何在linux服务器部署Rstudio server,配置ODBC远程访问win 服务器上的SQL server

如何在linux服务器部署Rstudio server,配置ODBC后通过RODBC包远程访问SQL server 背景介绍:之前写过一篇文章,提到近期要部署Rstudio server(搭建数据分析团队的分析环境),花了一个星期,搭好了.还YY过给这个亲生的儿子起个装逼的名字呢,莫扎特,巴赫什么的,并YY出以下场景{Jenny ,你把模型扔到莫扎特上跑一版最新结果出来...啊哈是不是特有逼格..哦哈哈...}我是部署的Rstudio server,这个是免费的,但是Rstudio sererv

SQL - 配置SQLServer 使其可以远程访问

环境: SQL Server2008 R2 SQL Server Management Studio 今天测试部署项目的时候,发现不能远程访问SQL Server.具体情形就是在Management Studio连入DB的时候,Server name 输入./Instance ,没有任何问题.输入ip地址\SQLInstance的时候.就连接不上了. 如何远程连接,网上有大把的教程. 总结出来有3个原因. 在SQL Server Management Studio本地登陆后,右击属性 1. 选择

(4.19)SQL server 2008一些常见配置之一(基本配置,权限配置、远程访问配置和内存配置。)

本系列转自一至4转自:甲子黎叔个人公众号,文章系列 SQL server 2008一些常见配置之一(基本配置) SQL server服务器配置主要有:权限配置.远程访问配置(网络配置).内存配置.接口配置.SSRS报表服务器配置等,今天一起学习最基本的配置:权限配置.远程访问配置和内存配置. 实操环境: 操作系统:windows2008 SQL server服务器:Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)   Apr  2 2