일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 중국외교부
- cnn
- 코로나
- 조현병
- 전염병
- 진짜영웅
- red hearse
- 우한코로나바이러스
- 창궐
- 어서와한국은처음이지
- 치앙마이
- 우한
- 웨일즈
- 봉준호감독통역
- 정은경 본부장님
- 확진자수
- wuhan
- Bolton
- 필리핀사망
- 코로나바이러스
- 최성재
- 우한코로나
- sharonchoi
- 코로나19
- 우한 코로나
- 신종코로나
- 봉준호감독통역사
- parasite
- 미중
- everybody wants you
- Today
- Total
목록개발노트/데이터베이스 (20)
오지's blog

Numeric value 'referral' is not recognized 정확하게는 다음과 같이 에러가 발생했다. 분명히 varchar값인데 숫자값이라며 값을 인지하지 못하여 넣을수 없다고 한다. SELECT T.$1, T.$2, T.$3, T.$4, T.$5, T.$6, T.$7 from @M/220509/ga/SOCIAL_MEDIUM.csv (FILE_FORMAT=>'O_ga_DPN_SOCIAL_MEDIUM') as T; insert를 하면 error가 발생하기 때문에 select문을 통해 우선 데이터를 조회해보았다. describe table table_name;의 쿼리로 6번째 컬럼의 type을 조사하니 number type이었다. 컬럼 순서가 바뀌면서 number타입의 데이터통에 varcha..
크롤링해서 받은 csv파일에 bom문자가 있었다. 이것을 df = pd.read_csv(os.path.join(filefullpath, filename), encoding='utf-16', header=None) df.iloc[:,0] = df.iloc[:,0].apply(lambda x : x.replace("\ufeff","")) 이렇게 가져오면 문제가 주문번호와 같은 숫자같은 문자열에 .0이 붙어 float형으로 바뀌었다. 알고보니 dataframe에서 int타입인줄알고 읽었는데 nan값이 있으면 int타입은 nan값을 허용하지 않으므로 float형으로 자동적으로 바뀌는 문제가 있었다. 그렇다고 df.iloc[:,0] = DF.iloc[:,0].apply(lambda x : x.replace("\u..
-- CREATE -- WAREHOUSE CREATE OR REPLACE WAREHOUSE A_WH WAREHOUSE_SIZE=XSMALL MAX_CLUSTER_COUNT=1 MIN_CLUSTER_COUNT=1 SCALING_POLICY=ECONOMY AUTO_SUSPEND=60 AUTO_RESUME = TRUE; -- DATABASE CREATE OR REPLACE TRANSIENT DATABASE A_WDB; -- SCHEMA CREATE OR REPLACE TRANSIENT SCHEMA ODS; CREATE OR REPLACE TRANSIENT SCHEMA DW; CREATE OR REPLACE TRANSIENT SCHEMA DM; -- ROLE CREATE OR REPLACE ROLE READ_R..
https://stackoverflow.com/questions/46495448/unable-to-install-mysqlclient-on-centos
ip address가 맞음에도 다음과 같이 unknown server host 에러가 발생한다. 원인: ip주소를 읽을때 앞 패스워드 입력시 reserved word가 있어서 인터프리터 입장에서 ip주소를 오해함에서 문제가 발생 해결 방법: password = urllib.parse.quote_plus(f"{dbinfo['MARIADB_PWD']}") 다음과 같이 password자체를 connection string에 포함하지 말고 구문분석해주는 urllib라이브러리를 이용하여 password를 connection string에 포함한다. 아래는 예제코드 def dbcon(): with open("dbinfo.json") as fp: dbinfo = json.loads(fp.read()) # dbconn..

처음 연결세팅시 Driver properties에 들어가 allowPublicKeyRetrieval 을 false에서 TRUE로 변경후 접속가능 OS Version: Ubuntu 20.04.3 LTS DB Version: mysql Ver 8.0.26-0ubuntu0.20.04.3 for Linux on x86_64 ((Ubuntu))
OS version $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focal MYSQL version $ mysql --version mysql Ver 8.0.26-0ubuntu0.20.04.3 for Linux on x86_64 ((Ubuntu)) 설치 전 os패키지 업데이트 $ sudo apt-get update $ sudo apt-get upgrade MYSQL서버 설치 $ sudo apt-get install mysql-server 처음설치후 설정 $ sudo mysql_secure_installation $ sudo ..
전체 코드 coninfo = get_info('secret.json') cnx = create_engine(f"mysql+pymysql://{coninfo['MYSQL_USER']}:{coninfo['MYSQL_PASSWORD']}@{coninfo['MYSQL_HOST']}:{coninfo['MYSQL_PORT']}/{coninfo['MYSQL_DBNAME']}") df = pd.read_csv('filename.csv', encoding='utf8') print(df.head(5)) df.to_sql(name=f"mayo", con=cnx, if_exists="replace", index=False) 코드 설명 coninfo = get_info('secret.json') secret.json파일이 외부..

$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install postgresql postgresql-contrib $ sudo -i -u postgres $ psql postgres-# create database airflow; postgres-# create user admin with encrypted password 'admin'; postgres-# grant all privileges on database airflow to admin; postgres-# \q 원격접속 허용 설정 루트계정으로 변경 1. postgresql.conf 설정파일 내용 변경 $ sudo vi /etc/postgresql/12/main/postgresql.c..
분명 sqlite에서는 발생하지 않은 에러가 mysql로 변경하니 발생한다. 에러 메세지는 TypeError: not all arguments converted during string formatting sql = """INSERT INTO test_tb(id, name) VALUES(?,?)""" # ERROR sql = """INSERT INTO test_tb(id, name) VALUES(%s,%s)""" # 에러 발생하지 않음 def insert_one_row(conn, insert_vals): print(type((insert_vals))) sql = """INSERT INTO test_tb(id, name) VALUES(?,?)""" # ERROR # sql = """INSERT INTO t..