my dog learned polymorphism*
The moose likes JDBC and the fly likes how to handle Null values? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Databases » JDBC
Bookmark "how to handle Null values?" Watch "how to handle Null values?" New topic
Author

how to handle Null values?

padma patil
Ranch Hand

Joined: Nov 06, 2001
Posts: 41
Hi,
In HTML Form(Add data) in which I have text box,radio,checkbox, etc .And I am reading getting form data and putting it in mysql database using prepareStatement. and I have another form(view data) in which I am fetching data from database and displying it on view data form using Resultset.
I am having following problems
1) If any one of the form field are empty the getParameter() returns Null and it saves null into database but when I try to fetch data from database which is null , I am getting Null pointer exception.
How to handle this?
2)I have one Date field and another DateTime filed in mysql database. While storing data using preparedstatement is stores DateTime and DAte values but while retriving from date using Resultset which has only getDate() method it truncates the time part from datetime field.
I also like to know how to convert String to float and Long.
any help in these problem are greatly appreciated.
Thanks,
Padmashree
Dave Vick
Ranch Hand

Joined: May 10, 2001
Posts: 3244
Padma
For your first probelm with the null values from the database there are two solutions:
1 -- Instead of storing a null value in the database store some sort of defaul value like 0 or something else to indicate there is no data.
2 -- After you read in a field form the adatabase that might have been null use the wasNull( ) method of the ResultSet to see if the value you just read was null and handle it appropriately.
To convert a String to a Float of those wrapper classes ahve costructors that take a String and create a Float or a Long. they alos both have a valueOf method that takes a String and returns the correct object.
If this is so you can put them in the database then the valueOf method would be best so you dont create new object that you dont really need.
pStmt.setFloat(1, valueOf("stringFloat"));
keep in mind that the valueOf can throw a NumberFormatException that you'll have to catch.
For your date problem, the only thing I can think of off hand, is to just get it as a String and then just parse it yourself.
hope those help


Dave
Jamie Robertson
Ranch Hand

Joined: Jul 09, 2001
Posts: 1879

...
2)I have one Date field and another DateTime filed in mysql database. While storing data using preparedstatement is stores DateTime and DAte values but while retriving from date using Resultset which has only getDate() method it truncates the time part from datetime field.

this problem can be solved in 2 steps.
1. write the Date field to the database using the setDate() method, and write the DateTime field to the database using setTimestamp() method (other wise it won't write the time portion to the field and will default to 0:00:00...).
2. retrieve the Date field from the database using getDate() method and retrieve the DateTime field using the getTimestamp() method.
Jamie
David Southwood
Greenhorn

Joined: Apr 17, 2002
Posts: 4
In reply to 1)
If at all possible don't stored nulls in the database at all, use empty strings i.e. ''
Set the properties of the string fields in the database to default to an empty string rather than NULL.
IMHO this makes grabbing data from input forms to the database a lot easier.
Elahe Shafie
Ranch Hand

Joined: Dec 12, 2001
Posts: 291
I had same problem as you and I validate my form in my HTML code and my Java program you have to stop user if the form is empty see my code for validate html form so in general:
1. use validate form in your HTML code
2. put if condition for chcking if variable is null then write a message for user
3.choose NOT NULL in your database for that field
I hope I was part of help...


Thanks,
Elahe
padma patil
Ranch Hand

Joined: Nov 06, 2001
Posts: 41
Now I have updated all table fields and set default value to "". and It works .
Thanks a lot for such a valuable response.
-
padma
 
 
subject: how to handle Null values?
 
Similar Threads
value from servlet to dropdown in jsp
Inserting Java Date in MySQL as Datetime
MySQL - Date/Time and Timestamp Issues
how to handle Null values?
Date/Timestamp