[ Príspevkov: 5 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.04.08
Prihlásený: 16.07.11
Príspevky: 126
Témy: 33 | 33
NapísalOffline : 28.07.2010 11:46 | Implicitne zaokruhlovanie-SQLite

Nazdar,
mam jeden problem so zaokruhlovanim ciselnych hodnot, ktore vyberam z databaze a nasledne ich spracuvavam pomocou programu napisaneho v jave.. Ako zabranit zaokruhlovaniu ???

Vdaka za skoru odpoved


Offline

Správca fóra
Správca fóra
Implicitne zaokruhlovanie-SQLite

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51 | 51
Bydlisko: Bratislava
NapísalOffline : 28.07.2010 12:00 | Implicitne zaokruhlovanie-SQLite

nie je to problem zle zvoleneho datoveho typu? kedy sa hodnoty zaokruhluju? resp. by si mohol uviest priklad zaokruhlovania, s ktorym mas problem...


_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.04.08
Prihlásený: 16.07.11
Príspevky: 126
Témy: 33 | 33
Napísal autor témyOffline : 28.07.2010 12:27 | Implicitne zaokruhlovanie-SQLite

Takze nastavil som datovy typ real v jave hodnoty spracuvavam za pomoci JDBC potom realne hodnoty vyberam cez metodu getFloat()

http://www.upnito.sk/imggal.php?viewGal ... eca3a687b5
par screenov vypis databaze cez spravcu SQLite a vysledok v programe

cast java kodu
Kód:
 String sql="SELECT *FROM tabulky WHERE KATEGORIA="+kategoria;
             rs=st.executeQuery(sql);
             Modely.modelVyzivoveTabulky.setRowCount(0);
             while(rs.next())
             {
                Object[] obj={rs.getString("NAZOV"),rs.getFloat("KJ"),rs.getFloat("KCAL"),
                      rs.getFloat("BIELKOVINY"),rs.getFloat("SACHARIDY"),rs.getFloat("TUKY")};
                Modely.modelVyzivoveTabulky.addRow(obj);
               }


Offline

Správca fóra
Správca fóra
Implicitne zaokruhlovanie-SQLite

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51 | 51
Bydlisko: Bratislava
NapísalOffline : 28.07.2010 12:47 | Implicitne zaokruhlovanie-SQLite

v tabulke nastav float namiesto real a tusim tam ma byt desatinna bodka, nie ciarka


_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 29.10.08
Prihlásený: 30.07.12
Príspevky: 933
Témy: 2 | 2
NapísalOffline : 28.07.2010 13:34 | Implicitne zaokruhlovanie-SQLite

este je tu moznost ze z db to vytahujes spravne no k orezaniu dojde pri dalsom spracovani napr v objekte "modelVyzivoveTabulky"

EDIT:
skusil som to testnut a komunikacia s SQLite bola bez zaokruhlovania
Kód:
import java.sql.*;

public class skuska {
     public static void main(String[] args) throws Exception {
       Class.forName("org.sqlite.JDBC");
       Connection conn =
         DriverManager.getConnection("jdbc:sqlite:test.db");
       Statement stat = conn.createStatement();
       stat.executeUpdate("drop table if exists test;");
       stat.executeUpdate("create table test (col1 float, col2 double);");
       PreparedStatement prep = conn.prepareStatement(
         "insert into test values (?, ?);");

       prep.setFloat(1, 1.227788f);
       prep.setFloat(2, 2.445577f);
      
       prep.execute();
       conn.setAutoCommit(true);

       ResultSet rs = stat.executeQuery("select * from test;");
       while (rs.next()) {
         System.out.println("col1 = " + rs.getFloat("col1"));
         System.out.println("col2 = " + rs.getFloat("col2"));
       }
       rs.close();
       conn.close();
     }
   }


 [ Príspevkov: 5 ] 


Implicitne zaokruhlovanie-SQLite




© 2005 - 2026 PCforum, edited by JanoF