File: //usr/lib/python3/dist-packages/django/db/backends/mysql/__pycache__/schema.cpython-310.pyc
o
3�a� � @ s, d dl mZ d dlmZ G dd� de�ZdS )� )�BaseDatabaseSchemaEditor)�NOT_PROVIDEDc s� e Zd ZdZdZdZdZdZdZdZ dZ
d Zd
ZdZ
dZd
ZdZedd� �Ze� fdd��Zdd� Zdd� Zdd� Zdd� Zedd� �Z� fdd�Z� fdd �Z� fd!d"�Z� fd#d$�Zd%d&� Z� fd'd(�Z� fd)d*�Z� Z S )+�DatabaseSchemaEditorz+RENAME TABLE %(old_table)s TO %(new_table)szMODIFY %(column)s %(type)s NULLz#MODIFY %(column)s %(type)s NOT NULLzMODIFY %(column)s %(type)sz'MODIFY %(column)s %(type)s%(collation)sz(ALTER COLUMN %(column)s SET DEFAULT NULLz,ALTER TABLE %(table)s DROP COLUMN %(column)sz)ALTER TABLE %(table)s DROP INDEX %(name)szY, ADD CONSTRAINT %(name)s FOREIGN KEY (%(column)s) REFERENCES %(to_table)s(%(to_column)s)z/ALTER TABLE %(table)s DROP FOREIGN KEY %(name)sz DROP INDEX %(name)s ON %(table)szGALTER TABLE %(table)s ADD CONSTRAINT %(name)s PRIMARY KEY (%(columns)s)z&ALTER TABLE %(table)s DROP PRIMARY KEYz9CREATE INDEX %(name)s ON %(table)s (%(columns)s)%(extra)sc C s | j jrdS dS )Nz8ALTER TABLE %(table)s DROP CONSTRAINT IF EXISTS %(name)sz)ALTER TABLE %(table)s DROP CHECK %(name)s)�
connection�mysql_is_mariadb��self� r �A/usr/lib/python3/dist-packages/django/db/backends/mysql/schema.py�sql_delete_check s z%DatabaseSchemaEditor.sql_delete_checkc s8 | j jr| j jdkrt� jS dS | j jdkrt� jS dS )N)�
� � )� r � zCALTER TABLE %(table)s CHANGE %(old_column)s %(new_column)s %(type)s)r r �
mysql_version�super�sql_rename_columnr �� __class__r r
r ) s �z&DatabaseSchemaEditor.sql_rename_columnc C sV | j �� t|t�r|�dd�}| j j �|| j j j�}t|t�r)t|t�r)|�� }|S )N�%z%%) r �ensure_connection�
isinstance�str�replace�escape�encoders�bytes�decode)r �value�quotedr r r
�quote_value4 s
z DatabaseSchemaEditor.quote_valuec C s$ |� | j�}|d uo|�� | jjv S �N)�db_typer �lower�_limited_data_types)r �fieldr# r r r
�_is_limited_data_type>