Django-如何在settings.py中设置mySql数据库的schema?

问题描述 投票:0回答:1

我在 settings.py 中有一个到 mySql 数据库的数据库连接:

DATABASES = {
    
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'OPTIONS': {
            'options': '-c search_path=xxx',
        },
        'NAME': 'xxx', 
        'USER': 'xxx',
        'PASSWORD': 'xxx', #fixed
        'HOST':'localhost',
        'PORT':'3306',
   }

我想设置这个数据库的模式。 但是设置这样的选项会触发以下错误:

    connection = Database.connect(**conn_params)
TypeError: Connection.__init__() got an unexpected keyword argument 'options'

什么触发了错误?

django mysql-connector
1个回答
0
投票
        'OPTIONS': {
            'options': '-c search_path=xxx',
        },

以上对 PostgreSQL 有效,但对 MySQL 无效。 MySQL 需要不同的字典键。

'options'
不是有效密钥。下面是一些“工作”键:

        'OPTIONS': {
            'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
            'charset': 'utf8mb4',
        },
© www.soinside.com 2019 - 2024. All rights reserved.