我创建了一个 Django 应用程序并使用可信连接将其连接到 SQL Server。当我迁移时,Django 正在数据库中创建一个新的模式名称(受信任的连接用户名),并将其添加到所有表中作为前缀。按照我的 IT 部门惯例,所有表都应使用“dbo”前缀创建。
最有趣的部分是:当我从 SSMS(也使用受信任的连接)访问数据库并创建一个新数据库时,我没有这个问题,它创建为“dbo.table_name”。
有人知道我该如何解决吗?请参阅下面更好的示例和一些代码。
摘要:
Django 创建: 'my_username.table_name'
我需要: 'dbo.table_name'
我的 django settings.py
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'dabase_name',
'HOST': 'database_host',
'USER': '',
'OPTIONS': {
'driver': "ODBC Driver 17 for SQL Server",
'Trusted_Connection' : 'Yes',
}
}
}
我的一个模型(表)作为例子:
class Sap_module(models.Model):
sap_module = models.CharField(max_length=2, unique=True)
available = models.BooleanField(default=True)
def __str__(self):
return self.sap_module