?
Solved

MySQL / ASP - Invalid use of Null

Posted on 2009-07-08
8
Medium Priority
?
770 Views
Last Modified: 2012-06-21
I am getting an "invalid use of null" error with the following code.

cottage_array = split((enquiries.Fields.Item("enquirycottage").Value),",")

There is definitely a value in the column.

If I do this instead I don't get the error:

dim str_enq : str_enq = (enquiries.Fields.Item("enquirycottage").Value)
cottage_array = split(str_enq,",")

I am using MySQL 5.1.

Any ideas..?
0
Comment
Question by:Orroland
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
8 Comments
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24808930
you have to first check if the field value is null or not.

this might work as shortcut:
cottage_array = split(("" & enquiries.Fields.Item("enquirycottage").Value),",")

Open in new window

0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24808933
otherwise:
dim v
v = ""
if not isnull(enquiries.Fields.Item("enquirycottage").Value) then
  v = enquiries.Fields.Item("enquirycottage").Value
end if
cottage_array = split(v,",")

Open in new window

0
 

Author Comment

by:Orroland
ID: 24808971
Thanks for the amazingly fast response.

Yes, I see that this workaround will fix the problem.  However, I don't understand why it is happening.  The field is a MySQL text field and DEFINITELY has a value.

If have just found that even if I do a response.write of the field value before the split() it works.  It seems that I need to extract the field value before it will work.
0
Does Your Cloud Backup Use Blockchain Technology?

Blockchain technology has already revolutionized finance thanks to Bitcoin. Now it's disrupting other areas, including the realm of data protection. Learn how blockchain is now being used to authenticate backup files and keep them safe from hackers.

 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 24808986
text field, you say? which size?
via odbc driver? which version?

that could be the problem... with the newest mysql odbc driver, or better the oledb provider, it should work better.
0
 

Author Comment

by:Orroland
ID: 24809095
My connection string:

driver={MySQL ODBC 5.1 Driver};server=xxx;uid=xxx; pwd=xxx;database=xxx;option=3;

How do I use the OLEDB provider?
0
 
LVL 143

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 2000 total points
ID: 24809117
0
 

Author Comment

by:Orroland
ID: 24809251
OK, I have downloaded, installed and activated their Provider.

I now just get a (very unhelpful) error when I try to open a recordset:

800410ff

My new connection string is:

Provider=MySQL Provider; Data Source=xxx; User ID =xxx; Password=xxx; Initial Catalog=xxx;

Does this look OK?
0
 
LVL 9

Expert Comment

by:rg20
ID: 24809619
I seem to recall an error with Oracle readers that once you read the value, you cant read it again, hence a null.

you might store it to a local variable then split it.  hence you dont' get the error
0

Featured Post

New benefit for Premium Members - Upgrade now!

Ready to get started with anonymous questions today? It's easy! Learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Creating and Managing Databases with phpMyAdmin in cPanel.
In this article, I’ll talk about multi-threaded slave statistics printed in MySQL error log file.
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question