Django测试想要访问主数据库MS SQL Server

问题描述 投票:0回答:1

我有一个运行Django 2的应用程序连接到Microsoft SQL Server后端。

我们处在一个环境非常严格的环境中 - 用户帐户可以访问包含我的django应用程序所有表的数据库。

它无法访问SQL Server上的master数据库,并且对具有该访问级别的帐户的任何请求都可能被拒绝。它可以在现有数据库中创建表,但不能创建全新的数据库。

当我运行应用程序的测试时,我得到错误:

Got an error creating the test database: ('42000', "[42000] [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]CREATE DATABASE permission denied in database 'master'. (262) (SQLExecDirectW)")

那么这个最好的行动方案是什么?有没有办法手动创建'测试数据库'并让Django将其用于测试目的,以便在运行测试时不尝试创建新的数据库?

sql-server django django-testing django-tests
1个回答
0
投票

我们最终必须指定一个不同的数据库(一个本地SQLite实例)进行特定的测试,因为MS-SQL Server实例基于每个用户被锁定,并且不允许更改django的用户权限。

它需要额外的设置和更改过程'以适应使用本地SQLite,但嘿,测试工作!

© www.soinside.com 2019 - 2024. All rights reserved.