使用下面的链接下载适用于你的场景的适当示例数据库。
如果你不确定需要哪种数据库,可以从与 SQL Server 版本匹配的 OLTP 版本开始。
OLTP | 数据仓库 | 轻型 |
---|---|---|
AdventureWorks2022.bak | AdventureWorksDW2022.bak | AdventureWorksLT2022.bak |
AdventureWorks2019.bak | AdventureWorksDW2019.bak | AdventureWorksLT2019.bak |
AdventureWorks2017.bak | AdventureWorksDW2017.bak | AdventureWorksLT2017.bak |
AdventureWorks2016.bak | AdventureWorksDW2016.bak | AdventureWorksLT2016.bak |
AdventureWorks2016_EXT.bak | AdventureWorksDW2016_EXT.bak | 空值 |
AdventureWorks2014.bak | AdventureWorksDW2014.bak | AdventureWorksLT2014.bak |
AdventureWorks2012.bak | AdventureWorksDW2012.bak | AdventureWorksLT2012.bak |
AdventureWorks2008R2.bak | AdventureWorksDW2008R2.bak | 空值 |
可以直接在 GitHub 上找到其他文件:
可以使用 .bak
文件将示例数据库还原到 SQL Server 实例。为此,可以使用 RESTORE (Transact-SQL) 命令,或使用 SQL Server Management Studio (SSMS) 或 Azure Data Studio 中的图形界面 (GUI) 。
如果你是刚开始使用 SQL Server Management Studio (SSMS),可以参阅连接和查询开始入门操作。
若要在 SSMS 中还原数据库,请执行以下步骤:
.bak
文件。.bak
文件移动到 SQL Server 备份位置。根据安装位置、实例名称和 SQL Server 版本,此位置会有所不同。例如,SQL Server 2019 (15.x) 的默认实例的默认位置为:
C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Backup
.屏幕截图显示如何通过右键单击“对象资源管理器”中的数据库,然后选择“还原数据库”来选择还原数据库。
.bak
文件。如果将文件移动到此位置,但在向导中看不到该文件,这通常表示存在权限问题 - SQL Server或登录到SQL Server的用户没有此文件夹中此文件的权限。有关还原 SQL Server 数据库的详细信息,请参阅使用 SSMS 还原数据库备份。
可以使用 Transact-SQL (T-SQL) 还原示例数据库。
下面提供了一个还原 AdventureWorks2022
示例,但数据库名称和安装文件路径可能因环境而异。
若要在 Windows 上还原AdventureWorks2022
,请根据环境修改值,然后运行以下 Transact-SQL (T-SQL) 命令:
USE [master];
GO
RESTORE DATABASE [AdventureWorks2022]
FROM DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\Backup\AdventureWorks2022.bak'
WITH
FILE = 1,
NOUNLOAD,
STATS = 5;
GO
若要在 Linux 上还原AdventureWorks2022
,请将 Windows 文件系统路径更改为 Linux,然后运行以下 Transact-SQL (T-SQL) 命令:
USE [master];
GO
RESTORE DATABASE [AdventureWorks2022]
FROM DISK = '/var/opt/mssql/backup/AdventureWorks2022.bak'
WITH
MOVE 'AdventureWorks2022' TO '/var/opt/mssql/data/AdventureWorks2022.mdf',
MOVE 'AdventureWorks2022_log' TO '/var/opt/mssql/data/AdventureWorks2022_log.ldf',
FILE = 1,
NOUNLOAD,
STATS = 5;
GO
或者,可以使用脚本创建 AdventureWorks
数据库,而不考虑版本。
以下脚本可用于创建整个 AdventureWorks
数据库:
有关使用脚本的更多信息,可以在 GitHub 上找到。
1、下载备份文件.zip文件到数据库服务器上,解压到D:\scripts文件夹
2、使用SSMS工具打开instawdbdw.sql文件,在查询菜单中,启用SQLCMD模式
3、修改第39行如下路径:C:\Samples\AdventureWorksDW\ 为 D:\scripts\
4、注意:对于olap的库,需要修改为如下内容,添加MAXERRORS = 20000
,否则导入会报错:
BULK INSERT [Person].[Address] FROM '$(SqlSamplesSourceDataPath)Address.csv'
WITH (
CHECK_CONSTRAINTS,
CODEPAGE='ACP',
DATAFILETYPE = 'char',
FIELDTERMINATOR= '\t',
ROWTERMINATOR = '\n',
KEEPIDENTITY,
TABLOCK,
MAXERRORS = 20000
);
请参考:https://www.xmmup.com/mssqldaorushilishujukuadventureworksbaocuo-chuxiandarongliangjiazaishujuzhuanhuancuowuleixingbupia.html
5、最后执行脚本即可。
1、下载备份文件.zip文件到Linux数据库服务器上,解压到/soft/文件夹
2、使用SSMS工具打开instawdbdw.sql文件,在查询菜单中,启用SQLCMD模式
3、修改第39行如下路径:C:\Samples\AdventureWorksDW\ 为 /soft/AdventureWorks-oltp-install-script/
4、若数据库在Linux服务器上,则需要修改instawdbdw.sql和instawdb.sql文件,注释掉如下内容,否则会报错:Keyword or statement option 'CODEPAGE' is not supported on the 'Linux' platform.
CODEPAGE='ACP',
批量替换为
-- CODEPAGE='ACP',
5、注意:对于olap的库,需要修改为如下内容,添加MAXERRORS = 20000
,否则导入会报错:
BULK INSERT [Person].[Address] FROM '$(SqlSamplesSourceDataPath)Address.csv'
WITH (
CHECK_CONSTRAINTS,
CODEPAGE='ACP',
DATAFILETYPE = 'char',
FIELDTERMINATOR= '\t',
ROWTERMINATOR = '\n',
KEEPIDENTITY,
TABLOCK,
MAXERRORS = 20000
);
请参考:https://www.xmmup.com/mssqldaorushilishujukuadventureworksbaocuo-chuxiandarongliangjiazaishujuzhuanhuancuowuleixingbupia.html
6、最后执行脚本即可。
1、推荐备份还原方式创建,直接使用2008的备份文件,可以还原到最高2022版本(已测试)
2、oltp库大概230MB,而OLAP大概160MB
3、压缩包文件必须放在数据库服务器上
4、若不开启全文搜索服务,则导入会有部分报错,但是不影响表数据量
https://learn.microsoft.com/zh-cn/sql/samples/adventureworks-install-configure?view=sql-server-ver16&tabs=ssms
https://github.com/Microsoft/sql-server-samples
https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks