private NpgsqlDbType ConvertNpgSqlDbType(NPDBType dbType) { switch (dbType) { case NPDBType.Integer: return(NpgsqlDbType.Integer); case NPDBType.Char: return(NpgsqlDbType.Char); case NPDBType.VarChar: return(NpgsqlDbType.Varchar); case NPDBType.DateTime: return(NpgsqlDbType.Date); case NPDBType.Image: return(NpgsqlDbType.Unknown); case NPDBType.Text: return(NpgsqlDbType.Text); default: throw new Exception("알 수 없는 DataBase Type 입니다."); } }
private DbType ConvertDBType(NPDBType dbType) { switch (dbType) { case NPDBType.Integer: return(DbType.Int64); case NPDBType.Char: return(DbType.String); case NPDBType.VarChar: return(DbType.String); case NPDBType.DateTime: return(DbType.DateTime); case NPDBType.Image: return(DbType.Binary); case NPDBType.Text: return(DbType.String); default: throw new Exception("알 수 없는 DataBase Type 입니다."); } }
/// <summary> /// IDbDataParameter 인스턴스 생성 /// </summary> /// <param name="parameterName"></param> /// <param name="dbType"></param> /// <returns></returns> public IDbDataParameter GetParameter(string parameterName, NPDBType dbType) { switch (_Kind) { case NPDBkind.MSSQL: return(new SqlParameter(ConvertParameterName(parameterName), ConvertMSSqlDbType(dbType))); case NPDBkind.Postgres: return(new NpgsqlParameter(ConvertParameterName(parameterName), ConvertNpgSqlDbType(dbType))); case NPDBkind.SQLite: return(new SQLiteParameter(ConvertParameterName(parameterName), ConvertDBType(dbType))); default: throw new Exception("알 수 없는 DataBase Type 입니다."); } }
public IDbDataParameter GetSQLiteParameter(string parameterName, NPDBType dbType) { return(new SQLiteParameter($"@{parameterName}", ConvertDBType(dbType))); }