반응형

Error code 모음/1. SQL errors 17

[SQL] 컬럼이 여러번 지정되었습니다.

1. 원인 Join 시에 조인한 테이블간 같은 컬럼을 select 하려고 할 때 발생하며 이로 인해 count 문이라던지 서브쿼리로 감싸서 활용하고자 할 때 컬럼이 여러번 지정되었다며 에러가 발생할 수 있음 2. 해결 방법 해결방법은 의외로 간단함 1. 컬럼들을 기입한 경우, 기입한 컬럼 간에 중복되는 컬럼이 없나 살펴보며 2. 만약 Asterisk(*) 로 한경우, table_name.* 같이 구별할 수 있게 만들어주어 중복을 피한다.

[MSSQL] varchar 데이터 형식을 datetime 데이터 형식으로 변환하는 중 값 범위를 벗어났습니다 에러

1. 에러 원인 에러의 원인은 의외로 쉽다. datetime 에서 설정한 값의 범위를 벗어났다는 것이다. 예를 들면, 2023-12-31 인데, 2023-12-32 등과 같이 날짜의 범위를 벗어나는 데이터가 존재할 경우 위와 같은 에러가 발생한다. 2. 해결 방법 try_cast 문을 사용하면 해결할 수 있다. try_cast 문은 MSSQL 에서 캐스팅을 진행할 때, 해당 데이터 타입의 범위를 벗어나는 값이 존재하면 해당 값을 null 로 넣고 변환하는 함수이다. 3. 우려사항 아직 감은 잘 안잡히지만, 정합성 검증과 같은 작업을 진행할 시 null 된 값들이 안잡힐 수 있으므로.. 정합성이 잘 맞지 않을 수 있겟다라는 생각이 든다 4. 사용 방법 SELECT count(1) FROM dbo.table..

[Oracle Error] begin case declare end exception exit for goto if loop mod null pragma raise return select update while with

1. 원인 프로시져 문에서 문법 오류가 발생했을 때 에러가 뜸 2. 해결 방법 흔한 방법이지만, 에러문에 힌트가 있음... -> 이게 어렵지..인내심을 가지고 찾는다는 것이.. 나의 에러문은 아래와 같았음 begin case declare end exception exit for goto if loop mod null pragma raise return select update while with 즉 문법에 문제가 있다는 것이다... oracle 프로시져 문의 문법을 찾아 해맸음... 그 결과 다른 쿼리를 실행시키려면... execute immediate 를 계속 붙여야 한다는 것을 알게됨 적용 후 성공(쿼리는 아래와 같음..) .option("sessionInitStatement","""BEGIN ex..

[MongoDB] mongodb: Auth mechanism not specified

1. 에러 원인 해당 에러는 mongo 에 아이디 / 비번 설정을 했을 경우 pymongo 를 통해 해당 아이디 / 비번을 입력을 해주어야 되는데 해당 설정이 제대로 되지 않는 경우 발생하는 것 같다. 2. 해결 방법 authenticate 메서드를 사용하는 방법도 있지만 아무래도 제일 편한거는 string 형태로 하나의 링크를 만들어주는 방법이 제일 편할 것이다. 링크를 직접 만드는 데는 어려울 수 있으므로 MongoDB Compass 에 New Connection 부분에서 링크를 복붙해서 붙이는것이 가장 편하다고 본다 복사해서 사용하고 있는 파이썬 스크립트에 붙여넣기를 한다 이렇게 하면 위의 에러는 해결할 수 있다고 본다. 3. 참고 링크 https://stackoverflow.com/question..

[Sql Error] Ignoring query to other database

1. 에러 원인 리눅스를 통해 접속을 할때, mysql -root -p 로 접속을 해주어서 에러가 발생했었음. 몇군데 서치를 해보니 'u' flag 를 지정하지 않고 유저 id 를 입력해서 데이터베이스에서 무시를 하는 에러였음 2. 해결 방법 기존에 있던 연결을 Ctrl + z or c 로 끊어주고 mysql -u root -p 로 접속을 해주면 발생했던 에러를 해결하고 정상적으로 쿼리 입력 가능 3. 참고 링크 stackoverflow.com/questions/36132063/ignoring-query-to-other-database-command-line "Ignoring query to other database" command line I keep getting this weird message,..

[MySql Error] ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

1. 에러 발생 이유 간단하게 설명하자면 mysql 내의 패스워드 정책과 어긋났다는 이야기이다. 2. 해결 방법 이를 해결하기 위해선 우선 mysql 에서 운용중인 패스워드 정책을 확인해야 된다. 1) 아래 명령어를 기입한다 SHOW VARIABLES LIKE 'validate_password%'; 위 명령어를 기입하면 아래 이미지와 같이 mysql 에서 운용중인 패스워드 정책을 볼 수 있다 위의 정책들을 설명하자면 아래와 같다. 제일 위의 validate_password_check_user_name은 패스워드에 user id가 들어갔는지 묻는것이다. length는 길이를 의미한다. 8자 이상이어야 한다. mixed case count는 대소문자를 적어도 1회이상은 써야한다. 밑의 number count..

[MySQL Error] The MySQL server is running with the --secure-file-priv option so it cannot execute this statement

Load Data 시도중 , 아래의 에러를 만났다.. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement 예전에도 이와 비슷한 것을 시도한 적이 있어 기억이 났었다. 1. 에러 원인 에러의 원인은 mysql 의 경우에는 보안을 위해 특정 경로에서만 파일을 업로드할 수 있도록 설정되어 있다. 그 이외의 경로에서 load infile 을 할 경우 에러가 발생한다. 2. 해결 방법 1) MySQL 에 접속한 후 경로 확인 SELECT @@GLOBAL.secure_file_priv; +---------------------------+ | @@GLOBAL.secure_file_priv |..

[MySQL Error] No database select the default db to be used by double-clicking its name in the schemas list in the sidebar 에러

1. 에러 원인 MySQL 워크벤치에서 쿼리를 날렸는데 아래의 메시지가 뜰 경우는 데이터베이스를 선택하지 않았다고 생각하면 될 것 같다. Error Code: 1046. No database selected Select the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar. 2. 에러 해결 방법 나의 경우에는 비교적 쉽게 에러를 해결할 수 있었다. 데이터 베이스를 선택하지 않았기 때문에 아래의 쿼리로 데이터 베이스를 선택하고 쿼리를 다시 실행하니 정상적으로 동작했다. use [사용할 데이터 베이스 이름]

[Oracle Error] 오라클 비밀번호 만료 에러 ORA-28001: the password has expired

에러 원인 - 오라클 DB 의 경우에는 보안을 위해서 주기적으로 패스워드를 바꾸도록 되어있음(180일 주기) - 몇일 전부터 패스워드 변경 요청 메시지가 뜨는데 바꾸지 않을 경우에는 아래와 같은 에러 메시지창 발생 해결 방법 1. 우선, 윈도우 CMD 창을 켠 후, 아래와 같이 입력하에 오라클 DB 에 접속한다. C:\>sqlplus "/as sysdba" 위 명령어를 사용하면 별도의 패스워드 입력이나 인증 없이 관리자로서 접속이 가능하다. 2. 아래 명령어로 새로운 패스워드를 설정해주면 끝 ALTER USER [user_id] IDENTIFIED BY [new_password]; 3. 새로 변경한 패스워드로 Oracle DB 에 접속 *** 만약 비밀번호가 틀릴 경우 아래 명령어를 통해 계정을 풀고 다..

[PostgreSQL Error] duplicate key value violates unique constraint

에러 발생 이유 PostgreSQL 에서는 nextval( ) 등을 통해 primary key 를 생략한 채로 자동 시퀀스를 실행하다보면 primary key 자동으로 번호가 지정되는 경우가 있는데, 대게는 unique value 로 번호가 지정이 된다고 한다. 하지만, 데이터 복사 등의 데이터에 변경이 일어나는 모종의 이유로 시퀀스 객체와 테이블의 키 값에 차이가 생기는 경우가 종종 발생하는데, 이런 경우에는 primary key 를 생략한 채로 insert 를 할 경우에는 postgresql 에서 이를 인지하고 오류를 발생시킨다고 한다. ERROR: duplicate key value violates unique constraint "table_pkey" 해결방법 1. 오류가 난 테이블의 최대 키 값..

반응형