[ aleksandarpopov @ 11.12.2006. 17:12 ] @

Ima li ko iskustva sa gore navedenom kombinacijom uz upotrebu Npgsql.dll, ne preko ODBC -a ?
Pozdrav
[ alex @ 12.12.2006. 14:10 ] @
Radi odlicno i nisam primetio nikakve probleme, narocito posle 0.7.2 verzije Npgsql-a (1.0 radi super!). Veoma stabilno i veoma brzo.
[ aleksandarpopov @ 12.12.2006. 14:46 ] @
Pitam posto sam isprobavao sa datasetovima i adapterima, kada mi je kod update-a ponekad kod parametara tipa DateTime dodeljivao null umesto nekog datuma (koji je u datasetu pravilno postavljen na novi) i kod nekih sql-ova nije dobro parsirao ispravan sql sa parametrima - za @ je ispaljivao gresku invalid operator, a kada sam stavio : tada mi je ispaljivao gresku 'invalid sql statement near : ' ...
Verzija Npgsql.dll 1.0 na .NET 2.0.... ..!!1?!?!!
Koristis ga u produkcionoj aplikaciji?
[ alex @ 12.12.2006. 16:22 ] @
Da, koristim Npgsql u production okruzenju, u nekoliko web aplikacija i nekoliko web servisa. Sve je .NET 1.0, i MS i Mono implementacije, medjutim nisam imao jos potrebe za Npgsql-om u .NET 2.0 okruzenju.

Koliko se secam, Npgsql koristi ":" sintaksu i sa tim nisam nikad imao problema. Takodje, nisam imao problema ni sa DateTime tipom (znam da su imali problema s tim u ranijim verzijama, al' od 0.7.2, k'o sto spomenuh, nisam imao problema s tim).

Mozda da posaljes parce kôda gde mozes da prikazes svoj problem?
[ aleksandarpopov @ 12.12.2006. 17:27 ] @
Code:

            NpgsqlConnection conn = new NpgsqlConnection(strConn);


            //DataSet ds = new DataSet();

            NpgsqlCommand da = new NpgsqlCommand();

            da.CommandText = "update prg_maintain_log set sif_mod = @sif_mod, dat_mod = @dat_mod, descrip = @descrip where id = @id";
            da.Connection = conn;

            da.Parameters.Add(new NpgsqlParameter("id",DbType.Int32));
            
            da.Parameters.Add(new NpgsqlParameter("sif_mod",DbType.Int32));

            da.Parameters.Add(new NpgsqlParameter("dat_mod",DbType.DateTime));

            da.Parameters.Add(new NpgsqlParameter("descrip",DbType.String));



            da.Parameters[0].Direction = ParameterDirection.Input;
            da.Parameters[1].Direction = ParameterDirection.Input;
            da.Parameters[2].Direction = ParameterDirection.Input;
            da.Parameters[3].Direction = ParameterDirection.Input;

            //da.UpdateCommand.Parameters[0].SourceColumn = "id";
            //da.UpdateCommand.Parameters[1].SourceColumn = "sif_mod";
            //da.UpdateCommand.Parameters[2].SourceColumn = "dat_mod";
            //da.UpdateCommand.Parameters[3].SourceColumn = "descrip";

            //da.Fill(ds);

            //DataTable dt = ds.Tables[0];
            //dataGridView1.DataSource = dt;
            //DataRow dr = dt.Rows[0];
            //dr["id"] = 5;
            da.Parameters[0].Value = 4;
            da.Parameters[1].Value = "sif_mod";
            da.Parameters[2].Value = DateTime.Parse("11.09.2001");
            da.Parameters[3].Value = "novi opis2";
            
            try
            { 
              conn.Open();
              int slo = da.ExecuteNonQuery();
            }
            catch(Exception exep)
            {
                MessageBox.Show(exep.Message);
            }


Sa .NET 2.0 nece i dalje baca gresku o parsiranju, probao sam sa Mono-m i tu radi...!?
Moguce da je zbog .NET 2.0...
Ovo je samo probni kod, onaj pod komentarima je deo koda gde sam probao sa dataset-om, koji je isto pravio probleme kada promenim datum na neki drugi u gridu, pokusam da izvrsim update i ispaljivao je gresku da dat_mod cannot be null, ali kada sam debugovao aplikaciju, vrednost u datatabeli nije bila null, ali vrednost Value od parametra jeste...
Verovatno je problem sa implementacijom za .NET2.0, kad stignem poslacu bug report autorima.
Pozdrav!