Solved

MySQL / ASP - Invalid use of Null

Posted on 2009-07-08
8
763 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
  • 4
  • 3
8 Comments
 
LVL 142

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 142

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
 
LVL 142

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
Efficient way to get backups off site to Azure

This user guide provides instructions on how to deploy and configure both a StoneFly Scale Out NAS Enterprise Cloud Drive virtual machine and Veeam Cloud Connect in the Microsoft Azure Cloud.

 

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 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 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

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

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

I would like to start this tip/trick by saying Thank You, to all who said that this could not be done, as it forced me to make sure that it could be accomplished. :) To start, I want to make sure everyone understands the importance of utilizing p…
Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Migrating to Microsoft Office 365 is becoming increasingly popular for organizations both large and small. If you have made the leap to Microsoft’s cloud platform, you know that you will need to create a corporate email signature for your Office 365…

912 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now