迁移到 SQL Server 2017 后遇到有趣的问题。
绝对路径测试
backup database master to disk = 'C:\Temp\1\2\3\master.bak'
按预期在 C:\Temp\1\2\3\ 中创建备份。
相对路径测试#1
backup database master to disk = 'C:\Temp\1\2\3\..\master.bak'
在 C:\Temp\ 中创建备份
预期:C:\Temp\1\2\
相对路径测试#2
backup database master to disk = 'C:\Temp\11\22\33\..\master.bak'
backup database master to disk = 'C:\Temp\111\222\333\..\master.bak'
backup database master to disk = 'C:\Temp\bin\bin\bin\..\master.bak'
在文件夹 C:\Temp\11\、C:\Temp\111\、C:\Temp\bin\ 中创建备份
预期:分别为 C:\Temp\11\22\、C:\Temp\111\222\ 和 C:\Temp\bin\bin\。
相对路径测试#3
backup database master to disk = 'C:\Temp\Folder1\Folder2\Folder3\..\master.bak'
backup database master to disk = 'C:\Temp\1111\2222\3333\..\master.bak'
备份按预期分别在文件夹 C:\Temp\Folder1\Folder2 和 C:\Temp\1111\2222 中创建。
如您所见,所有相对路径都具有相同的深度,但根据文件夹名称的长度,备份文件位于不同的级别。我无法使用 SQL Server 2014 复制此问题。我能够在 SQL Server 2017 RTM 和 RTM-CU2 中复制此问题。
操作系统:Windows Server 2016。粘贴到 Windows 资源管理器时,路径会正确解析。
当相对路径包含短(4 个字符以下)文件夹名称时,如何使它们工作?