Skip to content

Commit 2f3a738

Browse files
committed
Add database migration
1 parent 56bebf0 commit 2f3a738

File tree

1 file changed

+151
-0
lines changed

1 file changed

+151
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
"""Update database nullable constraints
2+
3+
Revision ID: e3ba1f29c1c4
4+
Revises: 272da5f400de
5+
Create Date: 2024-11-27 15:55:09.495649+00:00
6+
7+
"""
8+
9+
import sqlalchemy as sa
10+
from alembic import op
11+
from sqlalchemy.dialects import postgresql
12+
13+
# revision identifiers, used by Alembic.
14+
revision = "e3ba1f29c1c4"
15+
down_revision = "272da5f400de"
16+
branch_labels = None
17+
depends_on = None
18+
19+
20+
def upgrade() -> None:
21+
op.alter_column(
22+
"classifications", "data_source_id", existing_type=sa.INTEGER(), nullable=False
23+
)
24+
op.alter_column(
25+
"coveragerecords", "data_source_id", existing_type=sa.INTEGER(), nullable=False
26+
)
27+
op.alter_column(
28+
"credentials", "data_source_id", existing_type=sa.INTEGER(), nullable=False
29+
)
30+
op.alter_column(
31+
"customlists", "data_source_id", existing_type=sa.INTEGER(), nullable=False
32+
)
33+
op.alter_column(
34+
"customlists", "auto_update_enabled", existing_type=sa.BOOLEAN(), nullable=False
35+
)
36+
op.alter_column("datasources", "name", existing_type=sa.VARCHAR(), nullable=False)
37+
op.alter_column(
38+
"editions", "data_source_id", existing_type=sa.INTEGER(), nullable=False
39+
)
40+
op.alter_column(
41+
"editions", "primary_identifier_id", existing_type=sa.INTEGER(), nullable=False
42+
)
43+
op.alter_column(
44+
"equivalents", "input_id", existing_type=sa.INTEGER(), nullable=False
45+
)
46+
op.alter_column(
47+
"equivalents", "data_source_id", existing_type=sa.INTEGER(), nullable=False
48+
)
49+
op.alter_column(
50+
"equivalents",
51+
"strength",
52+
existing_type=postgresql.DOUBLE_PRECISION(precision=53),
53+
nullable=False,
54+
)
55+
op.alter_column(
56+
"equivalentscoveragerecords",
57+
"equivalency_id",
58+
existing_type=sa.INTEGER(),
59+
nullable=False,
60+
)
61+
op.alter_column("holds", "patron_id", existing_type=sa.INTEGER(), nullable=False)
62+
op.alter_column(
63+
"holds", "license_pool_id", existing_type=sa.INTEGER(), nullable=False
64+
)
65+
op.alter_column("libraries", "name", existing_type=sa.VARCHAR(), nullable=False)
66+
op.alter_column(
67+
"licensepools", "data_source_id", existing_type=sa.INTEGER(), nullable=False
68+
)
69+
op.alter_column(
70+
"licensepools", "identifier_id", existing_type=sa.INTEGER(), nullable=False
71+
)
72+
op.alter_column(
73+
"licenses", "license_pool_id", existing_type=sa.INTEGER(), nullable=False
74+
)
75+
op.alter_column("loans", "patron_id", existing_type=sa.INTEGER(), nullable=False)
76+
op.alter_column(
77+
"loans", "license_pool_id", existing_type=sa.INTEGER(), nullable=False
78+
)
79+
op.alter_column(
80+
"resources", "data_source_id", existing_type=sa.INTEGER(), nullable=False
81+
)
82+
op.alter_column(
83+
"workgenres", "genre_id", existing_type=sa.INTEGER(), nullable=False
84+
)
85+
op.alter_column("workgenres", "work_id", existing_type=sa.INTEGER(), nullable=False)
86+
87+
88+
def downgrade() -> None:
89+
op.alter_column("workgenres", "work_id", existing_type=sa.INTEGER(), nullable=True)
90+
op.alter_column("workgenres", "genre_id", existing_type=sa.INTEGER(), nullable=True)
91+
op.alter_column(
92+
"resources", "data_source_id", existing_type=sa.INTEGER(), nullable=True
93+
)
94+
op.alter_column(
95+
"loans", "license_pool_id", existing_type=sa.INTEGER(), nullable=True
96+
)
97+
op.alter_column("loans", "patron_id", existing_type=sa.INTEGER(), nullable=True)
98+
op.alter_column(
99+
"licenses", "license_pool_id", existing_type=sa.INTEGER(), nullable=True
100+
)
101+
op.alter_column(
102+
"licensepools", "identifier_id", existing_type=sa.INTEGER(), nullable=True
103+
)
104+
op.alter_column(
105+
"licensepools", "data_source_id", existing_type=sa.INTEGER(), nullable=True
106+
)
107+
op.alter_column("libraries", "name", existing_type=sa.VARCHAR(), nullable=True)
108+
op.alter_column(
109+
"holds", "license_pool_id", existing_type=sa.INTEGER(), nullable=True
110+
)
111+
op.alter_column("holds", "patron_id", existing_type=sa.INTEGER(), nullable=True)
112+
op.alter_column(
113+
"equivalentscoveragerecords",
114+
"equivalency_id",
115+
existing_type=sa.INTEGER(),
116+
nullable=True,
117+
)
118+
op.alter_column(
119+
"equivalents",
120+
"strength",
121+
existing_type=postgresql.DOUBLE_PRECISION(precision=53),
122+
nullable=True,
123+
)
124+
op.alter_column(
125+
"equivalents", "data_source_id", existing_type=sa.INTEGER(), nullable=True
126+
)
127+
op.alter_column(
128+
"equivalents", "input_id", existing_type=sa.INTEGER(), nullable=True
129+
)
130+
op.alter_column(
131+
"editions", "primary_identifier_id", existing_type=sa.INTEGER(), nullable=True
132+
)
133+
op.alter_column(
134+
"editions", "data_source_id", existing_type=sa.INTEGER(), nullable=True
135+
)
136+
op.alter_column("datasources", "name", existing_type=sa.VARCHAR(), nullable=True)
137+
op.alter_column(
138+
"customlists", "auto_update_enabled", existing_type=sa.BOOLEAN(), nullable=True
139+
)
140+
op.alter_column(
141+
"customlists", "data_source_id", existing_type=sa.INTEGER(), nullable=True
142+
)
143+
op.alter_column(
144+
"credentials", "data_source_id", existing_type=sa.INTEGER(), nullable=True
145+
)
146+
op.alter_column(
147+
"coveragerecords", "data_source_id", existing_type=sa.INTEGER(), nullable=True
148+
)
149+
op.alter_column(
150+
"classifications", "data_source_id", existing_type=sa.INTEGER(), nullable=True
151+
)

0 commit comments

Comments
 (0)