我有一个运行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将其用于测试目的,因此在运行测试时不会尝试创建新数据库吗?
答案 0 :(得分:0)
我们最终不得不指定一个不同的数据库(本地SQLite实例)进行测试,这是因为MS-SQL Server实例已按每个用户锁定,并且不允许更改django的用户权限
为了适应使用本地SQLite,需要额外的设置和过程更改”,但是,测试有效!