bg%tddlmZddlZddlmZddlmZddlmZddlmZddlm Z ddlm Z dd l m Z dd lmZdd lmZdd lmZd dlmZd dlmZd dlmZd dlmZd dlmZerZ6e e3d_d?Z7e e4d`d@Z8e e-dadAZ9e e.dbdBZ:e e/dcdCZ;e e0dddDZ<e e1dedEZ=e e2dfdFZ>dgdKZ?dhdOZ@didPZAdjdSZBdkdVZCdldXZDdmdYZEdmdZZFdnd]ZGdS)o) annotationsN)Optional) TYPE_CHECKING)Union)exc)Integer)types)compiles)Column) DDLElement) quoted_name)_columns_for_constraint) _find_columns)_fk_spec)_is_type_bound)_table_for_constraint)Any)Compiled) DDLCompiler) TextClause)Function) FetchedValue) TypeEngine) DefaultImpl)Computed)Identityrrz Function[Any]ceZdZdZ d d d ZdS) AlterTablezRepresent an ALTER TABLE statement. Only the string name and optional schema name of the table is required, not a full Table object. N table_namestrschema!Optional[Union[quoted_name, str]]returnNonec"||_||_dSN)r!r#)selfr!r#s G/opt/cloudlinux/venv/lib64/python3.11/site-packages/alembic/ddl/base.py__init__zAlterTable.__init__0s % r()r!r"r#r$r%r&)__name__ __module__ __qualname____doc__r+r,r*r r 's<59r,r c$eZdZ d d fd ZxZS) RenameTableNold_table_namer"new_table_nameUnion[quoted_name, str]r#r$r%r&c\t||||_dSN)r#)superr+r5)r)r4r5r# __class__s r*r+zRenameTable.__init__:s0 777,r,r()r4r"r5r6r#r$r%r&r-r.r/r+ __classcell__r:s@r*r3r39sG 59 -----------r,r3c,eZdZ ddfd ZxZS) AlterColumnNnamer" column_namer# Optional[str] existing_typeOptional[TypeEngine]existing_nullableOptional[bool]existing_server_defaultOptional[_ServerDefault]existing_commentr%r&ct||||_|tj|nd|_||_||_||_dSr8) r9r+rAsqltypes to_instancerCrErGrI) r)r@rAr#rCrErGrIr:s r*r+zAlterColumn.__init__Esp f---&(   / / /  "3'>$ 0r,)NNNNN)r@r"rAr"r#rBrCrDrErFrGrHrIrBr%r&r;r=s@r*r?r?DsS !%.2,0<@*.11111111111r,r?c eZdZd fd ZxZS) ColumnNullabler@r"rAnullableboolr%r&c Ltj||fi|||_dSr()r9r+rO)r)r@rArOkwr:s r*r+zColumnNullable.__init__\s1 {11b111  r,)r@r"rAr"rOrPr%r&r;r=s@r*rNrN[s=!!!!!!!!!!r,rNc eZdZd fd ZxZS) ColumnTyper@r"rAtype_rr%r&c ptj||fi|tj||_dSr()r9r+rKrLrU)r)r@rArUrRr:s r*r+zColumnType.__init__ds< {11b111)%00 r,)r@r"rAr"rUrr%r&r;r=s@r*rTrTcs=1111111111r,rTc eZdZdfd ZxZS) ColumnNamer@r"rAnewnamer%r&c Ltj||fi|||_dSr()r9r+rY)r)r@rArYrRr:s r*r+zColumnName.__init__l1 {11b111 r,)r@r"rAr"rYr"r%r&r;r=s@r*rXrXk=r,rXc eZdZd fd ZxZS) ColumnDefaultr@r"rAdefaultrHr%r&c Ltj||fi|||_dSr(r9r+r_r)r@rAr_rRr:s r*r+zColumnDefault.__init__ts1 {11b111 r,)r@r"rAr"r_rHr%r&r;r=s@r*r^r^ss=r,r^c eZdZd fd ZxZS) ComputedColumnDefaultr@r"rAr_Optional[Computed]r%r&c Ltj||fi|||_dSr(rarbs r*r+zComputedColumnDefault.__init__r[r,)r@r"rAr"r_rer%r&r;r=s@r*rdrdr\r,rdc eZdZd fd ZxZS) IdentityColumnDefaultr@r"rAr_Optional[Identity]implrr%r&c Ztj||fi|||_||_dSr()r9r+r_rj)r)r@rAr_rjrRr:s r*r+zIdentityColumnDefault.__init__s8 {11b111  r,) r@r"rAr"r_rirjrr%r&r;r=s@r*rhrhs=          r,rhc$eZdZ d d fd ZxZS) AddColumnNr@r"column Column[Any]r#r$r%r&c\t||||_dSr8r9r+rnr)r@rnr#r:s r*r+zAddColumn.__init__s- f--- r,r()r@r"rnror#r$r%r&r;r=s@r*rmrmsG 59 r,rmc$eZdZ d d fd ZxZS) DropColumnNr@r"rnror#rBr%r&c\t||||_dSr8rqrrs r*r+zDropColumn.__init__s- f--- r,r()r@r"rnror#rBr%r&r;r=s@r*rtrtsEFJr,rtc eZdZd fd ZxZS) ColumnCommentr@r"rAcommentrBr%r&c Ltj||fi|||_dSr()r9r+rx)r)r@rArxrRr:s r*r+zColumnComment.__init__r[r,)r@r"rAr"rxrBr%r&r;r=s@r*rwrwr\r,rwelementcompilerrr%r"c tt||j|jdt||j|jS)Nz RENAME TO ) alter_tabler!r#format_table_namer5rzr{rRs r*visit_rename_tablers? Hg0'.AAAA(G$:GNKKK r,c dt||j|jdt||jfi|SN )r}r!r# add_columnrnrs r*visit_add_columnrsB Hg0'.AAAA8W^22r222 r,c nt||j|jdt||jjfi|Sr)r}r!r# drop_columnrnr@rs r*visit_drop_columnrsE Hg0'.AAAAHgn188R888 r,c t||j|jdt||jd|jrdndS)Nrz DROP NOT NULLz SET NOT NULL)r}r!r# alter_columnrArOrs r*visit_column_nullablersP Hg0'.AAAAXw23333"+?? r,c t||j|jdt||jddt ||jzS)NrzTYPE %s)r}r!r#rrA format_typerUrs r*visit_column_typersU Hg0'.AAAAXw23333K'-8888 r,c t||j|jdt||jdt||jS)Nz RENAME z TO )r}r!r#format_column_namerArYrs r*visit_column_namersP Hg0'.AAAA8W%899998W_555 r,c t||j|jdt||jd|jdt ||jzndS)NrzSET DEFAULT %sz DROP DEFAULT)r}r!r#rrAr_format_server_defaultrs r*visit_column_defaultrsh Hg0'.AAAAXw23333 ? & 07?KKKK   r,c *tjd)NztAdding or removing a "computed" construct, e.g. GENERATED ALWAYS AS, to or from an existing column is not supported.r CompileErrorrs r*visit_computed_columnrs   E  r,c *tjd)NzAdding, removing or modifying an "identity" construct, e.g. GENERATED AS IDENTITY, to or from an existing column is not supported in this dialect.rrs r*visit_identity_columnrs   3  r,r@r6quotefunctools.partialct|tr |Sdfd|dD}|S)z#quote the elements of a dotted name.c&g|] }|Sr1r1).0xrs r* z quote_dotted..s!999AuuQxx999r,) isinstancer joinsplit)r@rresults ` r* quote_dottedr sZ $ $$uT{{ XX9999C999 : :F Mr,rr#r$ctj|jj}|rt ||dz||zS||S)Nr) functoolspartialpreparerrr)r{r@r#rs r*r~r~sR  h/5 6 6E FE**S055;;>>uT{{r,c6|j|Sr()rrr{r@s r*rr s   " "4 ( ((r,r_rHcV|tdt|S)Nr)server_default)get_column_default_stringr r)r{r_s r*rr&s.  - -sGG444  r,rUrc@|jj|Sr()dialect type_compilerprocess)r{rUs r*rr/s   ) 1 1% 8 88r,rBc*dt|||zS)NzALTER TABLE %s)r~)r{r@r#s r*r}r}3s /$GG GGr,c (dt||zS)NzDROP COLUMN %sr)r{r@rRs r*rr;s 04@@ @@r,c(dt||zS)NzALTER COLUMN %srrs r*rr?s 1(DAA AAr,rnroc dj|fi|z}dfd|jD}|r|d|zz }|S)Nz ADD COLUMN %src3BK|]}|VdSr()r)r constraintr{s r* zadd_column..FsB)3$$r,)get_column_specificationr constraints)r{rnrRtextconsts` r*rrCs| >X>vLLLL LD HH7=7I  E  e  Kr,)rzr3r{rr%r")rzrmr{rr%r")rzrtr{rr%r")rzrNr{rr%r")rzrTr{rr%r")rzrXr{rr%r")rzr^r{rr%r")rzrdr{r)rzrhr{r)r@r6rrr%r6)r{rr@r6r#r$r%r6)r{rr@r$r%r6)r{rr_rHr%r")r{rrUrr%r")r{rr@r"r#rBr%r")r{rr@r"r%r")r{rrnror%r")H __future__rrtypingrrr sqlalchemyrrr rKsqlalchemy.ext.compilerr sqlalchemy.schemar r sqlalchemy.sql.elementsr util.sqla_compatrrrrrrsqlalchemy.sql.compilerrrrsqlalchemy.sql.functionsrsqlalchemy.sql.schemarsqlalchemy.sql.type_apirrjrrrr"_ServerDefaultr r3r?rNrTrXr^rdrhrmrtrwrrrrrrrrrrr~rrrr}rrrr1r,r*rsG"""""" ((((((,,,,,,$$$$$$((((((//////666666,,,,,,''''''------444444 ,000000333333222222111111222222222222!!!!!!++++++++++++|^_cIJ$-----*---11111*111.!!!!![!!!11111111     K   K     K    K + ) * . * * -        !     !     )))) 9999HHHHAAAABBBB      r,