我正在使用 django-pyodbc-azure ( https://github.com/michiya/django-pyodbc-azure ),一切正常。但是,当我迁移模型时,会在 SQL Server 数据库上创建一个名为“dbo”的新模式。我想使用已经存在的“sp”模式,有没有办法设置工作模式?
提前致谢。
我正在使用 django-pyodbc-azure ( https://github.com/michiya/django-pyodbc-azure ),一切正常。但是,当我迁移模型时,会在 SQL Server 数据库上创建一个名为“dbo”的新模式。我想使用已经存在的“sp”模式,有没有办法设置工作模式?
提前致谢。
IIRC,您需要更改您连接的用户的默认架构。如果您使用的是名为的 SQL Auth 用户django_user
:
ALTER USER django_user WITH DEFAULT_SCHEMA = [sp]
祝你好运。
在一个模型的 Meta 类下定义 db_table 如下:
db_table = "[your_schema].[your_table]"
我发现许多答案似乎不再起作用。相反,我使用此处找到的说明在定义时设置架构,db_table
例如它schema].[table
。不要打开那些方括号;重要的一点是].[
模式和表名之间。
在您的情况下,您需要设置:
class Meta:
managed = False
db_table = 'sp].[tablename'