본문 바로가기
백엔드/Python

(오류) (pymysql.err.OperationalError) (1054, "Unknown column '컬럼명' in 'field list'")

by 작은소행성 2020. 9. 28.

크롤링한 데이터를 mysql에 insert할 때 만난 오류

 

 

 

OperationalError: (pymysql.err.OperationalError) (1054, "Unknown column '공고기관' in 'field list'")

[SQL: INSERT INTO rndrss2 (`공고기관`, `제목`, `공고일`, `링크`) VALUES (%(공고기관)s, %(제목)s, %(공고일)s, %(링크)s)] [parameters: ({'공고기관': '공고이름', '공고일': '2020.09.28', '링크': 'https://www.'})

 

 

다음과 같은 오류가 생긴 데에는 두가지 이유가 있다.

 

1. colum이 없다.

 

2. 사용자가 문자열로 준 데이터가 쌍따옴표로 둘러싸여 있지 않아서 생기는 오류로

    mysql은 쌍다옴표로 둘러싸여있지 않으면 문자열로 인식하지 않는다.

 

    config = create_engine('mysql+pymysql://'+user+':'+password+'@'+host+':'+port+'/'+database)
    df_sql = df_pd.to_sql('tabname', con=config, if_exists='append', index = False)    
    print(df_sql)
    cursor.executemany("insert into tabname (company,title,date,link) values(%s,%s,%s,%s)",val_insert)

 

내가 만든 코드에선 colum은 존재하기때문에

문자열로 인식하지 못해서 insert가 되지 않았음을 알 수 있다.

 

 

 

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

반응형