我需要使用名为AppsDB
的SQL Server 2019数据库开发一个新的django项目(我们称之为new_django
(,该数据库已经托管了另一个django工程(我们称其为old_django
(。这两个应用程序是完全分开的。不幸的是,我无法为每个新的django项目获得一个新的数据库,所以我必须重用AppsDB
。我不明白的是,我如何告诉django不要覆盖old_django
生成的现有auth_...
和django_...
表?
我的第一个想法是为这两个项目使用不同的模式,但据我所知,django不支持SQL Server数据库。一些解决方案建议更改给定用户的数据库默认模式,如以下anwser。但我也不会为每个项目都获得一个新用户。在每次迁移之前,依赖于手动更改数据库模式肯定会在某个时候造成混乱。
我被当前的设置所困扰,想知道是否有人想出了一个更优雅的解决方案或不同的方法来解决我的问题?
非常感谢您的帮助!
您所需要做的就是在mssql服务器中创建一个新数据库,然后将django应用程序指向数据库服务器,如下所示。
DATABASES = {
'default': {
'ENGINE': 'mssql',
'NAME': 'YOU_DATABASE_NAME',
'USER': 'DB_USER',
'PASSWORD': 'DB_PASSWORD',
'HOST': 'YOUR_DATABASE_HOST',
'PORT': '',
'OPTIONS': {
'driver': 'ODBC Driver 13 for SQL Server',
},
}
}