나는이 lib에 너무 https://github.com/pedro-muniz/ODPNetConnect/blob/master/ODPNetConnect.cs
매개 변수가있는 쓰기를하고 다음과 같이 읽을 수 있습니다 만들어진 :
를
ODPNetConnect odp = new ODPNetConnect();
if (!String.IsNullOrWhiteSpace(odp.ERROR))
{
throw new Exception(odp.ERROR);
}
//Write:
string sql = @"INSERT INTO TABLE (D1, D2, D3) VALUES (:D1, :D2, :D3)";
Dictionary<string, object> params = new Dictionary<string, object>();
params["D1"] = "D1";
params["D2"] = "D2";
params["D3"] = "D3";
int affectedRows = odp.ParameterizedWrite(sql, params);
if (!String.IsNullOrWhiteSpace(odp.ERROR))
{
throw new Exception(odp.ERROR);
}
//read
string sql = @"SELECT * FROM TABLE WHERE D1 = :D1";
Dictionary<string, object> params = new Dictionary<string, object>();
params["D1"] = "D1";
DataTable dt = odp.ParameterizedRead(sql, params);
if (!String.IsNullOrWhiteSpace(odp.ERROR))
{
throw new Exception(odp.ERROR);
}
참고 : ODPN에서이 줄을 변경해야합니다. etConnect.cs를 사용하여 연결 문자열을 설정하십시오.
static private string devConnectionString = "SET YOUR DEV CONNECTION STRING";
static private string productionConnectionString = "SET YOUR PRODUCTION CONNECTION STRING";
123 환경을 dev 또는 prod로 변경해야합니다.
public OracleConnection GetConnection(string env = "dev", bool cacheOn = false)
조쉬! 인서트는 어떨까요? 열 이름을 한정 할 필요는 없습니다. 실제 고통은 BindByName입니다. Npgsql은 그 변수를 설정할 필요가 없거나 필요하지 않습니다! –
삽입의 경우 "INSERT INTO table_name 값 (: foo, : bar)"또는 "INSERT INTO table_name (foo, bar) 값 (: foo, : bar)"을 사용할 수 있습니다. 테이블 구조 미래의 변화. –
고마워 : D Dind that BindByName! : P –