목차
- DB 연결 방식
- Encoding Error 해결 방법
- DB 연결 Error 해결 방법
1. DB 연결 방식
현재 나의 DB 연결 방식은 System.Data.SqlClient.dll을 사용한 방식이다. Visual Studio에서 Nuget으로 System.Data.SqlClient를 설치했다. 해당 dll을 사용하기 위해서는 Unity를 .Net FrameWork로 변경해야한다.
(dll 경로 : E:\(Project 이름)\Packages\System.Data.SqlClient.4.8.6\lib\net461)
* 이 방식을 사용하면 Build 전 Game에서는 정삭 동작할 것이다. 하지만 나의 경우, Build 후 exe 파일 실행 시 인코딩 및 DB 연결 에러가 발생하였다.
2. Encoding Error 해결 방법
unity System.NotSupportedException:Encoding 949 data could not be found.
1. Unity 설치시 생성되는 dll을 옮겨줘야 한다.
경로 : C:\Program Files\Unity\Hub\Editor\2022.3.20f1\Editor\Data\MonoBleedingEdge\lib\mono\unityjit-win32
(2020 이후 버전은 jit 폴더의 파일을 복사해야 한다.)
2. I18N.CJK.dll, I18N.dll 파일을 E:\(Build 폴더)\ (Project 이름)_Data\Managed에 붙여넣는다.
(CJK : 중국/일본/한국을 의미한다.)
3. DB 연결 Error 해결 방법
InvalidProgramException: Invalid IL code in I18N.Common.Manager:get_PrimaryManager (): IL_0000: ret
▶ 해당 에러는 System.Data.SqlClient.dll이 제대로 Build되지 않아서 생긴 에러다.
1. Unity 프로젝트의 Assets 폴더 하위에 Plugins 폴더를 생성한다.
2. 1.DB 연결 방식의 경로(E:\(Project 이름)\Packages\System.Data.SqlClient.4.8.6\lib\net461)에 있는 System.Data.SqlClient.dll, System.Data.SqlClient.xml 파일을 Plugins 폴더에 붙여넣는다.
3. 다시 Build 후 exe 파일 실행하면 정상적으로 DB가 연결되어 데이터를 받아오는 것을 확인할 수 있다.
사담
처음으로 티스토리 글을 적어봤다..! 처음부터 차근차근 올리지 못해서 Build 후 에러 해결부터 작성하게 되었지만 이후에 개발하는 과정들도 같이 올릴 예정이다!
오늘 작성한 에러 해결 방법이 많은 분들에게 도움이 됐으면 좋겠다 ㅎㅎ