Unity에서 PostgreSQL 사용
6319 단어 PostgreSQL데이터베이스Unity
환경
Unity 2017.1
Windows10
PostgreSQL 9.6.3
.Net 4.6
전제
PostgreSQL은 이미 설치되어 있으며 데이터베이스와 그 내용도 이미 있습니다.
할 일
1, htps : // 기주 b. 이 m / n pgsql / n pgsql / repease s에서 지원 버전의 msi 다운로드
어떤 버전이 무엇을 지원하는지 지금은 모르겠습니다.
2, msi를 실행하고 압축을 풀고 "Npgsql.dll"을 Assets 이하의 어딘가에 넣습니다.
h tps://sym 포 균열. bぉg. FC2. 소 m/bぉg-엔트리-2386. html
↑아래 이쪽의 기사로부터 발췌
가져온 msi 실행
Npgsql GAC Installation을 체크하여 설치.
그러면
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Npgsql\(버전 폴더)\
주변에 Npgsql.dll이 가능
3, UnityEditor의 dll 파일이 놓여있는 곳에서 "System.Data.dll"을 복사하여 대상 프로젝트의 Assets 이하의 어딘가에 넣습니다.
2017 이후라면,
"Unity 다운로드 대상\Editor\Data\Mono\lib\mono\2.0"
에 있다. Editor 폴더에 UnityEditor 실행 파일이 있으므로 바로 가기에서 추적해도 좋다.
UnityHub라면 Hub의 메인 화면에서 "설치 → 대상 버전의 메뉴 바 → 탐색기에서 열기"에서 다운로드 대상 폴더로 날 수있다
이상으로 환경 구축이 완료
여기까지 대상 프로젝트가 이런 느낌이 든다면 OK
코드
using UnityEngine;
using Npgsql;
public class SQLExample: MonoBehaviour
{
void Start()
{
//ここを実行環境に合わせて変える
string connectionString =
"Server=ServerName;" +
"Database=DBName;" +
"User ID=Id;" +
"Password=Pass;";
using (var dbcon = new NpgsqlConnection(connectionString))
{
dbcon.Open();
NpgsqlCommand dbcmd = dbcon.CreateCommand();
// ここら辺を欲しい内容に合わせて変える
string sql =
"SELECT *" +
"FROM user_list";
dbcmd.CommandText = sql;
NpgsqlDataReader reader = dbcmd.ExecuteReader();
while (reader.Read())
{
// ここら辺を欲しい内容に合わせて変える
string FirstName = (string)reader["first_name"];
string LastName = (string)reader["last_name"];
Debug.Log(FirstName + " " + LastName);
}
// clean up
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbcon.Close();
}
}
}
코드는 테스트 코드를 복사하므로 적절합니다.
using이 중복인가…?
재생 버튼을 누르면 쿼리가 실행됩니다.
Unity에서 MySQL 대신 PostgreSQL을 사용하고 싶었습니다.
MySQL이라면 기사가 많이 있었지만 PostgreSQL에서는 일체 Unity에 관한 기사를 찾을 수 없다
하지만 PostgreSQL에서 과거에 만든 DB가 있었고, 아무래도 거기를 사용할 필요가 있었다.
실제로 하는 일은 그리 많지 않지만 2시간 이상 조사하는데 걸렸기 때문에 힘들었다
오래된 사양
1, htp // pg 흠 응 dry. rg/frs/? g 납 p_i d=1000140
URL의 링크가 끊어져 스포츠 체육관의 사이트로 날아가기 때문에 고치겠습니다.
기본적으로는 최신판 중, 자신의 환경에 있던 것을 가져온다. 이번은 .Net4.6이었으므로, 「○○-net40.zip」을 사용했다. 아마 「○○-net45.zip」에서도 움직인다
2,zip중의 「Npgsql.dll」를 대상의 프로젝트의 Assets 이하의 어딘가에 넣는다
Reference
이 문제에 관하여(Unity에서 PostgreSQL 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yuto_onizakura/items/166434da5807af5d1301
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
PostgreSQL은 이미 설치되어 있으며 데이터베이스와 그 내용도 이미 있습니다.
할 일
1, htps : // 기주 b. 이 m / n pgsql / n pgsql / repease s에서 지원 버전의 msi 다운로드
어떤 버전이 무엇을 지원하는지 지금은 모르겠습니다.
2, msi를 실행하고 압축을 풀고 "Npgsql.dll"을 Assets 이하의 어딘가에 넣습니다.
h tps://sym 포 균열. bぉg. FC2. 소 m/bぉg-엔트리-2386. html
↑아래 이쪽의 기사로부터 발췌
가져온 msi 실행
Npgsql GAC Installation을 체크하여 설치.
그러면
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Npgsql\(버전 폴더)\
주변에 Npgsql.dll이 가능
3, UnityEditor의 dll 파일이 놓여있는 곳에서 "System.Data.dll"을 복사하여 대상 프로젝트의 Assets 이하의 어딘가에 넣습니다.
2017 이후라면,
"Unity 다운로드 대상\Editor\Data\Mono\lib\mono\2.0"
에 있다. Editor 폴더에 UnityEditor 실행 파일이 있으므로 바로 가기에서 추적해도 좋다.
UnityHub라면 Hub의 메인 화면에서 "설치 → 대상 버전의 메뉴 바 → 탐색기에서 열기"에서 다운로드 대상 폴더로 날 수있다
이상으로 환경 구축이 완료
여기까지 대상 프로젝트가 이런 느낌이 든다면 OK
코드
using UnityEngine;
using Npgsql;
public class SQLExample: MonoBehaviour
{
void Start()
{
//ここを実行環境に合わせて変える
string connectionString =
"Server=ServerName;" +
"Database=DBName;" +
"User ID=Id;" +
"Password=Pass;";
using (var dbcon = new NpgsqlConnection(connectionString))
{
dbcon.Open();
NpgsqlCommand dbcmd = dbcon.CreateCommand();
// ここら辺を欲しい内容に合わせて変える
string sql =
"SELECT *" +
"FROM user_list";
dbcmd.CommandText = sql;
NpgsqlDataReader reader = dbcmd.ExecuteReader();
while (reader.Read())
{
// ここら辺を欲しい内容に合わせて変える
string FirstName = (string)reader["first_name"];
string LastName = (string)reader["last_name"];
Debug.Log(FirstName + " " + LastName);
}
// clean up
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbcon.Close();
}
}
}
코드는 테스트 코드를 복사하므로 적절합니다.
using이 중복인가…?
재생 버튼을 누르면 쿼리가 실행됩니다.
Unity에서 MySQL 대신 PostgreSQL을 사용하고 싶었습니다.
MySQL이라면 기사가 많이 있었지만 PostgreSQL에서는 일체 Unity에 관한 기사를 찾을 수 없다
하지만 PostgreSQL에서 과거에 만든 DB가 있었고, 아무래도 거기를 사용할 필요가 있었다.
실제로 하는 일은 그리 많지 않지만 2시간 이상 조사하는데 걸렸기 때문에 힘들었다
오래된 사양
1, htp // pg 흠 응 dry. rg/frs/? g 납 p_i d=1000140
URL의 링크가 끊어져 스포츠 체육관의 사이트로 날아가기 때문에 고치겠습니다.
기본적으로는 최신판 중, 자신의 환경에 있던 것을 가져온다. 이번은 .Net4.6이었으므로, 「○○-net40.zip」을 사용했다. 아마 「○○-net45.zip」에서도 움직인다
2,zip중의 「Npgsql.dll」를 대상의 프로젝트의 Assets 이하의 어딘가에 넣는다
Reference
이 문제에 관하여(Unity에서 PostgreSQL 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yuto_onizakura/items/166434da5807af5d1301
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
using UnityEngine;
using Npgsql;
public class SQLExample: MonoBehaviour
{
void Start()
{
//ここを実行環境に合わせて変える
string connectionString =
"Server=ServerName;" +
"Database=DBName;" +
"User ID=Id;" +
"Password=Pass;";
using (var dbcon = new NpgsqlConnection(connectionString))
{
dbcon.Open();
NpgsqlCommand dbcmd = dbcon.CreateCommand();
// ここら辺を欲しい内容に合わせて変える
string sql =
"SELECT *" +
"FROM user_list";
dbcmd.CommandText = sql;
NpgsqlDataReader reader = dbcmd.ExecuteReader();
while (reader.Read())
{
// ここら辺を欲しい内容に合わせて変える
string FirstName = (string)reader["first_name"];
string LastName = (string)reader["last_name"];
Debug.Log(FirstName + " " + LastName);
}
// clean up
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbcon.Close();
}
}
}
코드는 테스트 코드를 복사하므로 적절합니다.
using이 중복인가…?
재생 버튼을 누르면 쿼리가 실행됩니다.
Unity에서 MySQL 대신 PostgreSQL을 사용하고 싶었습니다.
MySQL이라면 기사가 많이 있었지만 PostgreSQL에서는 일체 Unity에 관한 기사를 찾을 수 없다
하지만 PostgreSQL에서 과거에 만든 DB가 있었고, 아무래도 거기를 사용할 필요가 있었다.
실제로 하는 일은 그리 많지 않지만 2시간 이상 조사하는데 걸렸기 때문에 힘들었다
오래된 사양
1, htp // pg 흠 응 dry. rg/frs/? g 납 p_i d=1000140
URL의 링크가 끊어져 스포츠 체육관의 사이트로 날아가기 때문에 고치겠습니다.
기본적으로는 최신판 중, 자신의 환경에 있던 것을 가져온다. 이번은 .Net4.6이었으므로, 「○○-net40.zip」을 사용했다. 아마 「○○-net45.zip」에서도 움직인다
2,zip중의 「Npgsql.dll」를 대상의 프로젝트의 Assets 이하의 어딘가에 넣는다
Reference
이 문제에 관하여(Unity에서 PostgreSQL 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yuto_onizakura/items/166434da5807af5d1301
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
1, htp // pg 흠 응 dry. rg/frs/? g 납 p_i d=1000140
URL의 링크가 끊어져 스포츠 체육관의 사이트로 날아가기 때문에 고치겠습니다.
기본적으로는 최신판 중, 자신의 환경에 있던 것을 가져온다. 이번은 .Net4.6이었으므로, 「○○-net40.zip」을 사용했다. 아마 「○○-net45.zip」에서도 움직인다
2,zip중의 「Npgsql.dll」를 대상의 프로젝트의 Assets 이하의 어딘가에 넣는다
Reference
이 문제에 관하여(Unity에서 PostgreSQL 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yuto_onizakura/items/166434da5807af5d1301텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)