SQLServer的几种数据传输方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer的几种数据传输方法相关的知识,希望对你有一定的参考价值。

参考技术A   本篇文章讨论的是有关数据库之间数据传送的问题 在实际的应用领域里都可以用到 具有实用价值   例如 公司目前数据库中的信息量不够 需要第三方的数据支持   这事就有几种情况了    对方直接提供数据库帐号 你可以直接访问(可能性很小)    对方把数据库的信息自动转换成 mdb;dbf;TXT等格式的文件 然后传到你的服务器上    通过一个数据库接口程序 直接插到你的数据库中   这里还有个问题 无论对方提供的数据的结构是否和我们自己的一样 都不能直接插到我们的库中 这样一旦有问题会破坏我们的数据库 那么我们怎么办呢?  下面的文档会有很好的答案   具体示例   本篇文章讨论的是有关数据库之间数据传送的问题 在实际的应用领域里都可以用到 具有实用价值   例如 公司目前数据库中的信息量不够 需要第三方的数据支持   这事就有几种情况了    对方直接提供数据库帐号 你可以直接访问(可能性很小)    对方把数据库的信息自动转换成 mdb;dbf;TXT等格式的文件 然后传到你的服务器上    通过一个数据库接口程序 直接插到你的数据库中   这里还有个问题 无论对方提供的数据的结构是否和我们自己的一样 都不能直接插到我们的库中 这样一旦有问题会破坏我们的数据库 那么我们怎么办呢?  下面的文档会有很好的答案   具体示例   本篇文章讨论的是有关数据库之间数据传送的问题 在实际的应用领域里都可以用到 具有实用价值   例如 公司目前数据库中的信息量不够 需要第三方的数据支持   这事就有几种情况了    对方直接提供数据库帐号 你可以直接访问(可能性很小)    对方把数据库的信息自动转换成 mdb;dbf;TXT等格式的文件 然后传到你的服务器上    通过一个数据库接口程序 直接插到你的数据库中   这里还有个问题 无论对方提供的数据的结构是否和我们自己的一样 都不能直接插到我们的库中 这样一旦有问题会破坏我们的数据库 那么我们怎么办呢?  下面的文档会有很好的答案   一 数据库间的 COPY 导入导出等   利用数据库自带的向导进行数据库之间的传递   好处 可以在不同的数据库接口间传递数据   缺点 传递数据的过程中不能对数据进行更改   技巧 可以利用任务(JOB)定时取需要的数据   二 利用脚本和任务(JOB)更改处理数据   编写相关的数据库脚本 然后在任务(JOB)中运行   好处 可以更改插入的内容和插入的位置 使用灵活   缺点 要自己手写代码   技巧 可以配合导入导出 利用任务(JOB)实现强大的功能   具体示例   用途 把其它数据库服务器中的数据( mdb; dbf;sqlserver 等) 定时导入自己的数据库中使用 有个问题是 因为我们自己的数据库已经在使用 并且结构和要导入的数据库大不相同 而且原数据库中的某些内容要调整 所以我们利用了中间数据库 如图      具体的脚本程序   /*用途 把第三方提供的数据信息时时导入我们自己的数据库中   步骤 用 DTS (导入导出向导)把数据导入到中间数据库中 要设置任务定时导入 编写下面的脚本 然后把它加在 DTS 任务的后一步 即运行完 DTS后在运行此脚本 */   declare @id int @title nvarchar( ) 定义变量   declare test cursor for 定义游标   select DISTINCT id title from society where   datediff(day date getdate()) < 1     open test --打开游标  fetch next from test into @id,@title   while @@fetch_status = 0 --循环取数据   begin  declare @titletemp nvarchar(255)  declare test1 cursor for    select title from dbB.dbo.tb_infogegu where title=@title and datediff(day,date,getdate()) = 0    open test1   fetch next from test1 into @titletemp    if( @@fetch_status = 0) --表中该记录已经存在,删除该记录    DELETE FROM society WHERE id=@id   Else --不存在时,插入该记录   begin    insert into  dbB.dbo.tb_infogegu (title,content,channel,date,tradetype,stockcode, fromdate)   select top 1 title,content,channel,date,tradetype,stockcode, fromdate from society where id=@id order   by date   DELETE FROM society WHERE id=@id    end   close test1    deallocate test1   fetch next from test into @id,@title   end    DELETE FROM society   close test    deallocate test   GO lishixinzhi/Article/program/SQLServer/201311/22150

SQL Server启动的几种方法

SQL Server 启动有以下几种方法:

(1)在Control Panel——Administrative Tools——Services,找到SQL Server (XXX)进行启动。

其中XXX为实例名,默认实例名为“MSSQLSERVER”。

01

Figure-1: 在OS Services中启动

 

 

(2)在SQL Server Configuration Manager中启动。

02

Figure-2: 在SQL Server Configuration Manager中启动

 

(3)在SSMS的Object Explorer中启动。

不过这种方法在已经打开Object Explorer并且没有断开与Database Engine的连接才能使用。适合于正在使用SSMS,需要重启SQL Server实例的快速方法。

02-01

Figure-3: SSMS中停止实例服务

 

(4)在CMD下启动。

语法是:NET START "Service name",相应的停止服务是:NET STOP "Service name"。其中Service name在Control Panel——Administrative Tools——Services,右键选择相应的服务——Properties中查看。

03

Figure-4: 查看Service name

 

05

Figure-5: CMD下启动和停止SQL Server默认实例

 

注意,需要使用足够的权限的用户才能启动/停止服务,否则会报以下的错误:

06

Figure-6: 权限不足,导致操作失败

 

使用PowerShell,默认PS开头的提示符下,可以成功启动/停止默认实例。但如果操作命名实例,则会提示“服务名无效”,即使操作用户拥有足够的权限。

07

Figure-7: 使用PowerShell启动/停止SQL Server服务

 

解决方法就是在PowerShell转入CMD下进行操作。

08

Figure-8: 转入CMD下操作成功

 

(5)在CMD下,直接运行“sqlserver.exe”

09

Figure-9: 找到sqlserver.exe的路径和启动参数

 

10

Figure-10: 在CMD下直接执行sqlserver.exe

 

11

Figure-11: 在CMD下直接执行sqlserver.exe后显示的信息

 

前面介绍的4种方法,SQL Server是以后台服务的形式启动的,SQL Server的日志信息会记录到日志文件里。而第5种方法是以一般应用程序在运行,在SQL Server的日志信息直接出现在当前的CMD窗口中。如果按CTRL + C并以Y结束,或关闭CMD窗口,SQL Server进程会被关闭。

12

Figure-12: CTRL + C并以Y结束sqlserver.exe进程

 

这种启动SQL Server后,在Services里是看不到启动的,在SSMS也显示为未启动。但是可以正常使用SQL Server。

13

Figure-13: Service中显示SQL Server并未启动

 

14

Figure-14: SSMS中的Database Engine显示停止状态,但能够执行SQL查询

 

如果此时在SSMS或在Services里再以服务的形式启动SQL Server,会报以下的错误:

15

Figure-15: 在SSMS中启动时报错

 

16

Figure-16: 在Service中启动时报错

 

同样的,如果已经以服务的形式启动了SQL Server,再以第5种方法再去启动,会报以下错误:

17

Figure-17: 再次直接执行sqlserver.exe时报错

 

SQL Server的几种方法就介绍到这里。其实主要使用前面两种方法即可,推荐第2种方法。为什么呢?等以后有机会介绍SQL Server启动的过程,再作解释。

 

NET START命令的使用,参考以下文档:

https://technet.microsoft.com/en-us/library/bb490713.aspx

以上是关于SQLServer的几种数据传输方法的主要内容,如果未能解决你的问题,请参考以下文章

Sqlserver数据库备份的几种方式

Sqlserver数据库备份的几种方式

MariaDB数据库的几种安装方法

SQL Server中迁移数据的几种方法

JDBC连接数据库的几种方法与简单解析

Oracle数据库连接的几种方式