sql2016express免费吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql2016express免费吗相关的知识,希望对你有一定的参考价值。

sql2016express是免费的,个人学习使用可以,它对数据库文件大小有限制,限制为10G. 参考技术A 有免费 有收费!建议购买收费版!追答

建议购买收费

Sql Express数据备份和还原

 

参考文章:在SQL Server Express版本中没有代理功能如何自动备份数据库

首先用以下脚本,生成可以自动备份数据库的存储过程:

USE [master] 
GO 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO  
 
CREATE PROCEDURE [dbo].[sp_BackupDatabases]  
            @databaseName sysname = null,   --数据库名称            
            @backupLocation nvarchar(200)   --备份位置
AS  
      SET NOCOUNT ON;            
      DECLARE @DBs TABLE
      (
            ID int IDENTITY PRIMARY KEY,
            DBNAME nvarchar(500)
      )           
      --用一个表来存放找到的所有数据库名
      INSERT INTO @DBs (DBNAME)
      SELECT Name FROM master.sys.databases
      where state=0 AND name=@DatabaseName OR @DatabaseName IS NULL ORDER BY Name
           
      -- 过滤掉不需要备份的数据库(自定不需要备份的数据库名称填入括号内)
      DELETE @DBs where DBNAME IN (\'master\',\'model\',\'msdb\',\'tempdb\')         
            
      DECLARE @BackupFile varchar(100)    --备份文件名称
      DECLARE @DBNAME varchar(300)        --数据库名称
      DECLARE @sqlCommand NVARCHAR(1000)  --命令名称
      DECLARE @dateTime NVARCHAR(20)      --日期时间
      DECLARE @Loop int                   --循环备份所找到的数据库                       
            
      SELECT @Loop = min(ID) FROM @DBs   --从第1个开始备份
 
      WHILE @Loop IS NOT NULL   --有数据库要备份时进行操作
      BEGIN 
      --获得得数据库ID
      SET @DBNAME = \'[\'+(SELECT DBNAME FROM @DBs WHERE ID = @Loop)+\']\'
 
      --设置当前日期和时间,格式为年月日
      SET @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),112),\'/\',\'\')
 
      --设置备份文件名称,例如: D:\\SQLBak\\dbname_FULL_20171121.BAK
      SET @BackupFile = @backupLocation+REPLACE(REPLACE(@DBNAME, \'[\',\'\'),\']\',\'\')+ \'_FULL_\'+ @dateTime+ \'.BAK\'      
      
      --按类型执行备份操作 
      SET @sqlCommand = \'BACKUP DATABASE \' +@DBNAME+  \' TO DISK = \'\'\'+@BackupFile+ \'\'\' WITH INIT, NOSKIP, NOFORMAT\'
     
      --开始执行备份命令
      EXEC(@sqlCommand)
 
      --备份下一个数据库
      SELECT @Loop = min(ID) FROM @DBs where ID>@Loop
 
END

第二步执行存储过程,实现备份文件生成:

EXEC master.dbo.sp_BackupDatabases @databaseName=\'myTest_Db\', @backupLocation=\'D:\\testAutoDBBack\\\'

一个参数是要备份的数据库名称,第二个参数是:要存放备份文件的文件夹,提前在服务器上建好文件夹。

 

第三步把生成好的数据库备份文件,复制到目标文件夹中,然后在SQL Manager Studio中进行还原。

 

本文基本没有什么原创内容,只是按照参考文章实验了一下。实验结果可以实现。

 

以上是关于sql2016express免费吗的主要内容,如果未能解决你的问题,请参考以下文章

sql sever 2012 Evaluation 和Express有啥区别

SQL Server 2014 Express (x64),是啥版本的?express是啥意思?

SQL Server 2014 Express (x64),是啥版本的?express是啥意思?

ss 免费账号

有人知道一个好的免费软件 sql 脚本生成器吗? [关闭]

Visual Basic 2010 Express 中的免费水晶报表