我正在做一个明天必须上交的项目。对于这个项目,我使用在远程服务器上运行的 SQL Server Express 数据库。
现在,我需要.mdf
从远程数据库生成一个文件。我到处搜索,我找不到合适的解决方案。
我已将数据库脚本编写到一个.sql
文件中,但我找不到针对本地.mdf
文件执行它的方法。我可以创建一个.sdf
不起作用的,或者连接到数据库引擎。
帮助将不胜感激!
我正在做一个明天必须上交的项目。对于这个项目,我使用在远程服务器上运行的 SQL Server Express 数据库。
现在,我需要.mdf
从远程数据库生成一个文件。我到处搜索,我找不到合适的解决方案。
我已将数据库脚本编写到一个.sql
文件中,但我找不到针对本地.mdf
文件执行它的方法。我可以创建一个.sdf
不起作用的,或者连接到数据库引擎。
帮助将不胜感激!
.mdf
是 SQL Server 的数据文件格式。
所以你需要这些步骤:
.sql
脚本现在,完成所有步骤后,您可以将生成的.mdf
文件从 SQL Server 数据目录复制到其他地方。
不,您不能从远程数据库生成 MDF 文件。
您可以使用如下脚本创建本地数据库:
CREATE DATABASE [test_db] ON PRIMARY
( NAME = N'test_db', FILENAME = N'D:\MSSQL\test_db.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB )
LOG ON
( NAME = N'test_db_log', FILENAME = N'D:\MSSQL\test_db_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%)
GO
ALTER DATABASE [test_db] SET COMPATIBILITY_LEVEL = 100
GO
ALTER DATABASE [test_db] SET ANSI_NULL_DEFAULT OFF
GO
ALTER DATABASE [test_db] SET ANSI_NULLS OFF
GO
ALTER DATABASE [test_db] SET ANSI_PADDING OFF
GO
ALTER DATABASE [test_db] SET ANSI_WARNINGS OFF
GO
ALTER DATABASE [test_db] SET ARITHABORT OFF
GO
ALTER DATABASE [test_db] SET AUTO_CLOSE OFF
GO
ALTER DATABASE [test_db] SET AUTO_CREATE_STATISTICS ON
GO
ALTER DATABASE [test_db] SET AUTO_SHRINK OFF
GO
ALTER DATABASE [test_db] SET AUTO_UPDATE_STATISTICS ON
GO
ALTER DATABASE [test_db] SET CURSOR_CLOSE_ON_COMMIT OFF
GO
ALTER DATABASE [test_db] SET CURSOR_DEFAULT GLOBAL
GO
ALTER DATABASE [test_db] SET CONCAT_NULL_YIELDS_NULL OFF
GO
ALTER DATABASE [test_db] SET NUMERIC_ROUNDABORT OFF
GO
ALTER DATABASE [test_db] SET QUOTED_IDENTIFIER OFF
GO
ALTER DATABASE [test_db] SET RECURSIVE_TRIGGERS OFF
GO
ALTER DATABASE [test_db] SET DISABLE_BROKER
GO
ALTER DATABASE [test_db] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
GO
ALTER DATABASE [test_db] SET DATE_CORRELATION_OPTIMIZATION OFF
GO
ALTER DATABASE [test_db] SET PARAMETERIZATION SIMPLE
GO
ALTER DATABASE [test_db] SET READ_WRITE
GO
ALTER DATABASE [test_db] SET RECOVERY FULL
GO
ALTER DATABASE [test_db] SET MULTI_USER
GO
ALTER DATABASE [test_db] SET PAGE_VERIFY CHECKSUM
GO
USE [test_db]
GO
IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'PRIMARY') ALTER DATABASE [test_db] MODIFY FILEGROUP [PRIMARY] DEFAULT
GO
然后运行你的 sql 脚本来创建表并用你的数据填充它们。
在此之后,您有两个选择。
(当然这里假设两个SqlServer使用相同的版本)