Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

mysql Compress () với sqlalchemy

bạn có thể gán một hàm SQL cho thuộc tính:

from sqlalchemy import func
object.data = func.compress(mydata)
session.add(object)
session.commit()

Dưới đây là một ví dụ sử dụng một hàm DB-agnostic Lower () nhiều hơn:

from sqlalchemy import *
from sqlalchemy.orm import *
from sqlalchemy.ext.declarative import declarative_base

Base= declarative_base()

class A(Base):
    __tablename__ = "a"

    id = Column(Integer, primary_key=True)
    data = Column(String)

e = create_engine('sqlite://', echo=True)
Base.metadata.create_all(e)
s = Session(e)

a1 = A()
a1.data = func.lower("SomeData")
s.add(a1)
s.commit()

assert a1.data == "somedata"

bạn có thể làm cho nó tự động với @validates:

from sqlalchemy.orm import validates
class MyClass(Base):
    # ...
    data = Column(BLOB)

    @validates("data")
    def _set_data(self, key, value):
        return func.compress(value)

nếu bạn muốn nó có thể đọc được bằng python trước khi xả, bạn cần ghi nhớ cục bộ và sử dụng bộ mô tả để truy cập nó.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi có thể thực hiện Chọn, Cập nhật và Xóa mysql trong một truy vấn không?

  2. MySql và vấn đề chèn ID cuối cùng vẫn còn

  3. Hiển thị hình ảnh từ cơ sở dữ liệu MySQL trong dữ liệu JSF

  4. Lỗi mysqldump 1045 Quyền truy cập bị từ chối mặc dù mật khẩu chính xác, v.v.

  5. kiểm tra xem một giá trị có tồn tại trong mảng mã hóa json trong mysql không