我创建了一个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