comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: problem with idl database
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: problem with idl database [message #53766] Tue, 01 May 2007 10:29 Go to next message
Rick Towler is currently offline  Rick Towler
Messages: 821
Registered: August 1998
Senior Member
As CP said, Dataminer (and IDL) don't handle unicode characters very well.

One potential workaround, if you are on windows, is to use ADO+COM. But
due to (what I think are) limitations in IDL's IDLcomIDispatch object
you will only be able to return a single data type at a time. So if
your queries return columns of type char, date, and number then it will
not work efficiently. But if your queries return columns of all number
or date or char types then it is an option.

Or, probably better yet, just create a view that replicates your table
and whose column titles are in roman characters.

-Rick


stin.wang@gmail.com wrote:
> hi everyone, i have some problem with idl dababase
>
> i am working on some meteorological data which store in a mssql
> server.
> so i use idldabase connect the database, then use idldbrecordset to
> get desired table.
>
> but something happen. because in my original table ,some record name
> is in chinese. when i process this data , it say something like that
>
> "
> OBJ_NEW: Illegal tag name: 区站号.
> Execution halted at: DRAW_DENGWEN 19 F:\源码\IDL\draw_dengwen.pro
> $MAIN$
>
> "
>
> it seem like that the record name must be english. can anyone help my
> exlain this? or find a way to solve this problem?
>
Re: problem with idl database [message #53770 is a reply to message #53766] Tue, 01 May 2007 07:09 Go to previous messageGo to next message
codepod is currently offline  codepod
Messages: 19
Registered: March 2006
Junior Member
IDL doesn't really support international (Unicode) characters which
is the cause of this issue. When a recordset object connects to a
table, it defines an anonymous structure that maps to a table record.
When it does this, it uses the field names to build structure tags.
This is what's causing the above error.

Really no work around except to build a new table that uses roman
(English) characters.

-CP


On Apr 27, 8:55 pm, "stin.w...@gmail.com" <stin.w...@gmail.com> wrote:
> hi everyone, i have some problem with idl dababase
>
> i am working on some meteorological data which store in a mssql
> server.
> so i use idldabase connect the database, then use idldbrecordset to
> get desired table.
>
> but something happen. because in my original table ,some record name
> is in chinese. when i process this data , it say something like that
>
> "
> OBJ_NEW: Illegal tag name: 区站号.
> Execution halted at: DRAW_DENGWEN 19 F:\源码\IDL\draw_dengwen.pro
> $MAIN$
>
> "
>
> it seem like that the record name must be english. can anyone help my
> exlain this? or find a way to solve this problem?
Re: problem with idl database [message #53935 is a reply to message #53766] Mon, 07 May 2007 18:52 Go to previous messageGo to next message
stin.wang is currently offline  stin.wang
Messages: 15
Registered: April 2006
Junior Member
On May 2, 1:29 am, Rick Towler <rick.tow...@nomail.noaa.gov> wrote:
> As CP said, Dataminer (and IDL) don't handle unicode characters very well.
>
> One potential workaround, if you are on windows, is to use ADO+COM.  But
> due to (what I think are) limitations in IDL's IDLcomIDispatch object
> you will only be able to return a single data type at a time.  So if
> your queries return columns of type char, date, and number then it will
> not work efficiently.  But if your queries return columns of all number
> or date or char types then it is an option.
>
> Or, probably better yet, just create a view that replicates your table
> and whose column titles are in roman characters.
>
> -Rick
>
>
>
> stin.w...@gmail.com wrote:
>> hi everyone, i have some problem with idl dababase
>
>> i am working on some meteorological data which store in a mssql
>> server.
>> so i use idldabase  connect the database, then use idldbrecordset to
>> get desired table.
>
>> but something happen. because in my original table ,some record name
>> is in chinese. when i process this data , it say something like that
>
>> "
>> OBJ_NEW: Illegal tag name: 区站号.
>> Execution halted at: DRAW_DENGWEN       19 F:\源码\IDL\draw_dengwen.pro
>>                      $MAIN$
>
>> "
>
>> it seem like that the record name must be english. can anyone help my
>> exlain this? or find a way to solve this problem?- Hide quoted text -
>
> - Show quoted text -
Because the table is so big,(about ten millions datas),i think copy
all table is not my option. But thank all of your advice.so i use
vb.net to read database, and idl to draw picture.
Re: problem with idl database [message #53972 is a reply to message #53935] Wed, 09 May 2007 17:14 Go to previous message
Rick Towler is currently offline  Rick Towler
Messages: 821
Registered: August 1998
Senior Member
stin.wang@gmail.com wrote:

> Because the table is so big,(about ten millions datas),i think copy
> all table is not my option. But thank all of your advice.so i use
> vb.net to read database, and idl to draw picture.

Well, you still can create a view. It will *not* be a copy of the data.
Views are usually created to take existing data and present it in a
different format. Exactly what you need to do. The view itself is just
some sql code and the output from a query against a view is generated on
the fly.

If you want to do everything in IDL, this would be the easiest approach.
Creating a view would just take a few minutes.

-Rick


> On May 2, 1:29 am, Rick Towler <rick.tow...@nomail.noaa.gov> wrote:
>> As CP said, Dataminer (and IDL) don't handle unicode characters very well.
>>
>> One potential workaround, if you are on windows, is to use ADO+COM. But
>> due to (what I think are) limitations in IDL's IDLcomIDispatch object
>> you will only be able to return a single data type at a time. So if
>> your queries return columns of type char, date, and number then it will
>> not work efficiently. But if your queries return columns of all number
>> or date or char types then it is an option.
>>
>> Or, probably better yet, just create a view that replicates your table
>> and whose column titles are in roman characters.
>>
>> -Rick
>>
>>
>>
>> stin.w...@gmail.com wrote:
>>> hi everyone, i have some problem with idl dababase
>>> i am working on some meteorological data which store in a mssql
>>> server.
>>> so i use idldabase connect the database, then use idldbrecordset to
>>> get desired table.
>>> but something happen. because in my original table ,some record name
>>> is in chinese. when i process this data , it say something like that
>>> "
>>> OBJ_NEW: Illegal tag name: 区站号.
>>> Execution halted at: DRAW_DENGWEN 19 F:\源码\IDL\draw_dengwen.pro
>>> $MAIN$
>>> "
>>> it seem like that the record name must be english. can anyone help my
>>> exlain this? or find a way to solve this problem?- Hide quoted text -
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: How to write IDL log output to a file?
Next Topic: Object Graphics Code Generator

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 17:34:06 PDT 2025

Total time taken to generate the page: 0.00696 seconds