ORM 모델 프레임 워 크 에서 my sql 데이터 베 이 스 를 조작 하 는 방법
ORM 전 칭 은(Object Relational Mapping)대상 관계 매 핑 을 나타 낸다.프로 그래 밍 언어 로 이해 할 수 있 는 가상 데이터베이스;
[ORM 이해]
사용자 주소 정보 데이터베이스 시트 와 대상 맵
[ORM 의 중요 한 특성]
1.대상 을 대상 으로 하 는 프로 그래 밍 사상 으로 확대 하기 편리 함
2.적 게 쓰기(거의 쓰 지 않 음)sql,개발 효율 향상
3.다양한 유형의 데이터베이스(자주 사용 하 는 my sql,pg,Oacle 등)를 지원 하여 전환 이 편리 합 니 다.
4.ORM 기술 은 이미 상당히 성숙 하여 대부분의 문 제 를 해결 할 수 있다.
[ORM 모델 프레임 의 선택]
[SQLAlchemy ORM 모델]
알다 시 피 ORM 프레임 워 크 모델 은 선택 할 수 있 는 것 이 많 습 니 다.그러면 저 희 는 SQLAlchemy 모델 프레임 워 크 를 선 택 했 습 니 다.
pip install SQLAlchemy 설치 sql alchemy;pip install SQLAlchemy==1.4.17 버 전도 지정 할 수 있 습 니 다.
import sqlalcherm; sqlalchemy.__version__; 설치 성공 여부 및 버 전 번호 검증;
[SQL Alchemy 사용]
데이터베이스 연결 시작
2.성명 ORM 모델 기본 클래스
3.ORM 모델 류 실현
동기 데이터베이스 테이블
데이터베이스 연결 시작
지연 연결(Lazy Connecting)―데이터 베 이 스 를 진정 으로 조작 할 때 만 데이터 베 이 스 를 연결 할 수 있 습 니 다연결 코드 예시
from sqlalchemy import create_engine
create_engine("mysql://root:@127.0.0.1:3306/school?charset=utf8,echo=True,future=True")
create_engine 매개 변수 해석암호 에 특수 문자 가 포함 되 어 있 을 때 어떻게 처리 합 니까?
말 이 많 지 않 으 니,아래 코드 를 보십시오.
from urllib.parse import quote_plus
,
password_formatted= quote.plus("mima%&&&mima")
sqlalchemy ,
설명 ORM 모델 기본 클래스
from sqlalchemy.orm import declarative_base
Base = declarative_base()
[ORM 모델 클래스 구현]어떻게 실현 합 니까?우 리 는 그 를 계승 하기 위해 한 가지 종 류 를 써 야 한다.
그리고 속성 1 개 를 더 설치 해 야 합 니 다.
from sqlalchemy import Column, Integer, String, DateTime
class Student(Base):
""" """
__tablename__ = 'student'
id = Column(Integer, name='id', primary_key=True)
stu_no = Column(Integer, nullable=False, comment=' ')
stu_name = Column(String(16), nullable=False, comment=' ')
created_at = Column(DateTime)
1.동기 화 되 기 전에 데이터베이스 에 이 라 이브 러 리 가 있 는 지 확인 해 야 합 니 다.없 으 면 수 동 으로 만들어 야 합 니 다.2.표 만 들 기,표 삭제
from orm_connect_example import Base ,engine
#
Base.metadata.create_all(engine)
#
Base.metadata.drop_all(engine)
[ORM 에 대응 하 는 모델 필드 종류][코드 예시]
from sqlalchemy import create_engine
from sqlalchemy.orm import declarative_base
from sqlalchemy import Column, Integer, String, DateTime
# ,
engine = create_engine('mysql://root:@10.72.100.1:8081/test_database_1?charset=utf8',echo=True)
# , ORM
Base = declarative_base()
# , ORM
class Student(Base):
""" """
__tablename__ = 'student'
id = Column(Integer, name='id', primary_key=True)
stu_no = Column(Integer, nullable=False, comment=' ')
stu_name = Column(String(16), nullable=False, comment=' ')
created_at = Column(DateTime)
#
def create_table()
""" """
#
Base.metadata.create_all(bind=engine)
#
Base.metadata.drop_all(bind=engine)
여기 서 ORM 모델 프레임 워 크 가 my sql 데이터 베 이 스 를 조작 하 는 방법 에 관 한 글 은 여기까지 소개 되 었 습 니 다.더 많은 ORM 모델 프레임 워 크 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 저 희 를 많이 사랑 해 주세요!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
beego ORM으로 구조체에 매핑되지 않고 빠진 것go의 webframework인 에는 ORM의 기능이 붙어 있습니다. 이것을 사용하여 DB 테이블에서 얻은 값을 구조체에 매핑하려고 할 때 매핑되지 않고 작은 시간 동안 빠진 것을 공유합니다. 다음과 같은 테이블(A...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.