f4e275af56c7_add_agricultural_table.py 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. """add_agricultural_table
  2. Revision ID: f4e275af56c7
  3. Revises: 1a82e7aba37b
  4. Create Date: 2025-07-12 01:19:14.039177
  5. """
  6. from alembic import op
  7. import sqlalchemy as sa
  8. # revision identifiers, used by Alembic.
  9. revision = 'f4e275af56c7'
  10. down_revision = '1a82e7aba37b'
  11. branch_labels = None
  12. depends_on = None
  13. def upgrade():
  14. """升级数据库到当前版本"""
  15. # ### commands auto generated by Alembic - please adjust! ###
  16. op.create_table('agricultural_data',
  17. sa.Column('ID', sa.Integer(), autoincrement=True, nullable=False),
  18. sa.Column('county_name', sa.String(length=50), nullable=True, comment='县市名称'),
  19. sa.Column('crop_sowing_area', sa.Float(), nullable=True, comment='农作物播种面积(公顷)'),
  20. sa.Column('nitrogen_usage', sa.Float(), nullable=True, comment='氮肥使用量(吨/公顷/年)'),
  21. sa.Column('phosphorus_usage', sa.Float(), nullable=True, comment='磷肥使用量(吨/公顷/年)'),
  22. sa.Column('potassium_usage', sa.Float(), nullable=True, comment='钾肥使用量(吨/公顷/年)'),
  23. sa.Column('compound_usage', sa.Float(), nullable=True, comment='复合肥使用量(吨/公顷/年)'),
  24. sa.Column('organic_usage', sa.Float(), nullable=True, comment='有机肥使用量(吨/公顷/年)'),
  25. sa.Column('pesticide_usage', sa.Float(), nullable=True, comment='农药使用量(吨/公顷/年)'),
  26. sa.Column('farmyard_usage', sa.Float(), nullable=True, comment='农家肥使用量(吨/公顷/年)'),
  27. sa.Column('plastic_film_usage', sa.Float(), nullable=True, comment='农膜存留量(吨/公顷/年)'),
  28. sa.Column('nitrogen_cd_flux', sa.Float(), nullable=True, comment='氮肥镉输入通量(g/ha/a)'),
  29. sa.Column('phosphorus_cd_flux', sa.Float(), nullable=True, comment='磷肥镉输入通量(g/ha/a)'),
  30. sa.Column('potassium_cd_flux', sa.Float(), nullable=True, comment='钾肥镉输入通量(g/ha/a)'),
  31. sa.Column('compound_cd_flux', sa.Float(), nullable=True, comment='复合肥镉输入通量(g/ha/a)'),
  32. sa.Column('organic_cd_flux', sa.Float(), nullable=True, comment='有机肥镉输入通量(g/ha/a)'),
  33. sa.Column('pesticide_cd_flux', sa.Float(), nullable=True, comment='农药镉输入通量(g/ha/a)'),
  34. sa.Column('farmyard_cd_flux', sa.Float(), nullable=True, comment='农家肥镉输入通量(g/ha/a)'),
  35. sa.Column('plastic_film_cd_flux', sa.Float(), nullable=True, comment='农膜镉输入通量(g/ha/a)'),
  36. sa.Column('total_cd_flux', sa.Float(), nullable=True, comment='总镉输入通量(g/ha/a)'),
  37. sa.Column('data_year', sa.Integer(), nullable=True, comment='数据年份'),
  38. sa.PrimaryKeyConstraint('ID')
  39. )
  40. # ### end Alembic commands ###
  41. def downgrade():
  42. """将数据库降级到上一版本"""
  43. # ### commands auto generated by Alembic - please adjust! ###
  44. op.drop_table('agricultural_data')
  45. # ### end Alembic commands ###