How do I find my own blog?
Perl web-programming
Hello Guest
  
  • Login
• Register…
• Start blog
  • Who, Where, When
• What can I do?
• What to Read?
  • Polls
• Avatars
• Interests
  • Cities and Countries
• Random blog
• Users search
  • Search
• Games
• Tests
• QAIX
  • Talxy Chat
• Horoscope
• Online
 
Зарегистрируйся!

QAIX > Perl web-programmingGo to page: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | next »

  Recent blog posts: 
  They have birthday today: 
  Forums:   
  Discuss: 
  Recent forum topics: 
  Recent forum comments:
  Moderators:
Yesterday — Friday, 16 May 2008
DBD::Oracle, InstantClient 11.1.0.1, and Kerberos Peter Koczan 01:24:34
 Hello,

I'm trying to get the Oracle InstantClient to work so we can connect to
some remote data sources. It works...sort of. sqlplus works perfectly,
but DBD::Oracle has some nasty side effects, even though it connects and
gets data properly works.

Basically, DBD::Oracle looks for a Kerberos config file in
/krb5/krb.conf, which is elsewhere (/etc/krb5.conf). DBD::Oracle can't
find it, and then Kerberos is hosed for the rest of the process, such
that I can't connect via Kerberos to a Postgres database.

I can "fix" it by adding the following line to my sqlnet.ora (there's an
inconsequential blown assertion on program exit but everything else
works as expected):
SQLNET.KERBEROS5_CO­NF=/etc/krb5.conf

But the main issue is that we don't use Kerberos to connect to the
Oracle server (we just use straight password authentication). Why is it
trying to use Kerberos to connect, and how can I make it not use Kerberos?

Note that sqlplus doesn't try to use Kerberos, and DBD::Oracle even
tries to use Kerberos even when I set SQLNET.AUTHENTICATI­ON_SERVICES to
"(none)".

Peter

Gritty details:

I followed the instructions in
DBD-Oracle-1.21/err­_build/err_instantcl­ient.msg to fix the Makefile and
allow DBD::Oracle to compile.

Gritty details:
DBI - 1.602
Kerberos 5 - 1.6.2
DBD-Oracle - 1.21
Perl - 5.8.8

OS - RHEL 5

OptionsAdd comment
DBI->connect Error Matt Skubiszewski 01:13:37
 A very simple script:

#!/usr/bin/perl -w
use strict;

use DBI;

my $dbname = "test";
my $host = "localhost";
my $user = "postgres";
my $pass = "postgres";

my $dsn = "DBI:P­g:dbname=$dbn­ame";
my $conn = DBI->connect($dsn, $user, $pass);

Here is the error:

install_driver(Pg) failed: DBD::Pg object version undef does not match
bootstrap parameter 2.6.1 at
/usr/lib/perl5/5.8.­8/i586-linux-thread-­multi/DynaLoader.pm line 253.
Compilation failed in require at (eval 3) line 3.

at ./dbtest.pl line 11


Perl version v5.8.8

-Matt

OptionsAdd comment
The day before yesterday — Thursday, 15 May 2008
DBD::ODBC and cancel() Dean Arnold 02:04:28
 (DBI 1.604, DBD::ODBC 1.15, WinXP, AS 5.8.8)

I'm trying to test cancel of long running queries
via DBD::ODBC (using psqlodbc driver). I've written
a small proxy which injects 10+ second delays in
delivery of queries from client to server. And I've
managed to get SIGINT signals delivered to my app.
But it appears that DBD::ODBC doesn't appear to
believe the stmt handle is active when I cancel it.
I hacked DBD::ODBC's dbdimp.c:odbc_cance­l() to
add printf's on entry, if no stmt is active,
or if SQLCancel fails. When I run the test and
hit ctrl-C, odbc_cancel() does get called, *but*
it reports no active statement.

So I commented out the Active test in odbc_cancel(),
and then everything works as expected.

Is this a known sequencing problem ? Is Active not getting
set until the rows start returning ? If so, shouldn't it get
set immediately upon calling SQLExecute ? I'm very certain the
query is still pending in the proxy when I hit ctrl-C, so
no rows have yet been returned. I turned on max tracing, but
I don't see any setting/clearing of Active included in the
traces.

My small sample app follows.

Any help much appreciated,
Dean Arnold


use DBI;
use strict;
use warnings;

#
# allow signals anytime !!VERY DANGEROUS!!
#
$ENV{PERL_SIGNALS} = 'unsafe';

my $dsn = scalar @ARGV ? shift @ARGV : 'PostgreSQL30';
my $dbh = DBI->connect("dbi:O­DBC:$­dsn", undef, undef,
{ RaiseError => 0}) or die $DBI::errstr;

$| = 1;

my $cancelled;
my $sth = $dbh->prepare('sele­ct * from perl_dbi_test') or die $dbh->errstr;

$SIG{INT} = sub {
print "You cancelled.\n";
print "Not cancelled.\n" unless $sth->cancel();
$cancelled = 1;
};

print "Executing...\n";
my $rc = $sth->execute;

print "execute() done rc $rc, fetching rows\n";
die "Didn't cancel!\n" if $rc;

print "Cancelled, error is ", $sth->errstr, "\n" if $cancelled;

$dbh->disconnect();­



OptionsAdd comment
Wednesday, 14 May 2008
DBD::ODBC 1.16 uploaded to CPAN Martin Evans 20:24:13
 Hi,

I have just uploaded DBD::ODBC 1.16 to CPAN. This release contains the
following changes:

=head1 CHANGES

=head2 Changes in DBD::ODBC 1.16 May 13, 2008

=head3 Test Changes

Small change to the last test in 10handler.t to cope with the prepare
failing instead of the execute failing - spotted by Andrei Kovalevski
with the ODBCng Postgres driver.

Changed the 20SqlServer.t test to specifically disable MARS for the
test to check multiple active statements and added a new test to check
that when MARS_Connection is enabled multiple active statements are
allowed.

Changed the 09multi.t test to use ; as a SQL statement seperator
instead of a newline.

A few minor "use of unitialised" fixes in tests when a test fails.

In 02simple.t Output DBMS_NAME/VER, DRIVER_NAME/VER as useful
debugging aid when cpan testers report a fail.

2 new tests for odbc_query_timeout added to 03dbatt.t.

Changed 02simple.t test which did not work for Oracle due to a "select
1" in the test. Test changed to do "select 1 from dual" for Oracle.

New tests for numbered and named placeholders.

=head3 Documentation Changes

Added references to DBD::ODBC ohloh listing and markmail archives.

Added Tracing sections.

Added "Deviations from the DBI specification" section.

Moved the FAQ entries from ODBC.pm to new FAQ document. You can view
the FAQ with perldoc DBD::ODBC::FAQ.

Added provisional README.windows document.

Rewrote pod for odbc_query_timeout.­

Added a README.osx.

=head3 Internal Changes

More tracing in dbdimp.c for named parameters.

#ifdeffed out odbc_get_primary_ke­ys in dbdimp.c as it is no longer
used. $h->func($catalog, $schema, $table, 'GetPrimaryKeys') ends up
in dbdimp.c/dbd_st_pri­mary_keys now.

Reformatted dbdimp.c to avoid going over 80 columns.

Tracing changed. Levels reviewed and changed in many cases avoiding levels 1
and 2 which are reserved for DBI. Now using DBIc_TRACE macro internally.

=head3 Build Changes

Changes to Makefile.PL to fix a newly introduced bug with 'tr', remove
easysoft OOB detection and to try and use odbc_config and odbcinst if
we find them to aid automatic configuration. This latter change also
adds "odbc_config --cflags" to the CC line when building DBD::ODBC.

Avoid warning when testing ExtUtils::MakeMaker­ version and it is a
test release with an underscore in the version.

=head3 Functionality Changes

Added support for parse_trace_flag and parse_trace_flags methods and
defined a DBD::ODBC private flag 'odbcdev' as a test case.

Add support for the 'SQL' trace type. Added private trace type odbcdev
as an experimental start.

Change odbc_query_timeout attribute handling so if it is set to 0
after having set it to a non-zero value the default of no time out is
restored.

Added support for DBI's statistics_info method.

=head3 Bug Fixes

Fix bug in support for named placeholders leading to error "Can't
rebind placeholder" when there is more than one named placeholder.

Guard against scripts attempting to use a named placeholder more than
once in a single SQL statement.

If you called some methods after disconnecting (e.g., prepare/do and
any of the DBD::ODBC specific methods via "func") then no error was
generated.

Fixed issue with use of true/false as fields names in structure on MAC
OS X 10.5 (Leopard) thanks to Hayden Stainsby.

Remove tracing of bound wide characters as it relies on
null-terminated strings that don't exist.

Fix issue causing a problem with repeatedly executing a stored
procedure which returns no result-set. SQLMoreResults was only called
on the first execute and some drivers (SQL Server) insist a procedure
is not finished until SQLMoreResults returns SQL_NO_DATA.

Martin
--
Martin J. Evans
Easysoft Limited
http://www.easysoft­.com

OptionsAdd comment
ANNOUNCE: IBM Informix Database Driver for Perl DBI Version 2008.0513 (2008-05-13) released Jonathan Leffler 04:42:55
 IBM Informix Database Driver for Perl DBI Version 2008.0513 (2008-05-13)
has been uploaded to CPAN.

IBM Informix Database Driver for Perl (also known as DBD::Informix) is
the driver code that enables Perl 5.6.1 or later to access Informix
databases via the DBI module (but if you are not already using Perl
5.10.0 - or any later version - you should be planning to upgrade). You
will need the code for DBI version 1.38 or later as well (v1.604 - or any
later version - is recommended). The code for DBD::Informix is
available for download via:

http://www.perl.org­/CPAN/modules/by-cat­egory/07_Database_In­terfaces
http://dbi.perl.org­/

** When you successfully build this module, use the ItWorks (Perl)
** script to report your configuration to the maintenance team (meaning
** Jonathan Leffler) at dbd.informix@gmail.­com.
** The ItWorks script does not send email to anybody; you have to do
** that yourself.

New in release :P­RODVER::
* Fix $sth->{TYPE}: return 9 (SQL_DATE) not -1 (SQL_LVARCHAR), fixing an
11-year old bug.
* Add support for BIGINT in ESQL/C 3.50, including $h->{ix_bigserial}.­
* CPAN Testers reporting issues because Makefile.PL not exiting
successfully when pre-requisites not met.
* ESQL/C 3.50 (for IDS 11.50) typedefs ifx_loc_t - update dumpesql.h to
cope (Joe R Plugge <jrplugge@west.com>­).
* ESQL/C test fails during configuration when $Config{ccflags} has
leading spaces. Records show this problem also affected Dr Guenther
Seifert <guenther-h.seifert­@t-systems.com> in June 2007. Apologies
for not getting it fixed sooner.

Release 2008.0229:
* RT#32975: Add $h->{ix_serial} and $h->{ix_serial8}­.

Release 2007.0914
* RT#29364: Fix problem identifying ESQL/C libraries.

Release 2007.0904:
* Bug fix and tidying up release - no new functionality.
* Simplified internal release processing
* Refixed support for ESQL/C 5.20.
* Report server version better (using DBINFO).
* Reworked some headers.
* Reworked ExtUtils::AutoInsta­ll code.

Support email address:
* This release is supported by Jonathan Leffler <dbd.informix@gmail­.com>.
* You may also report your bugs via the CPAN resolution tracking system:
http://rt.cpan.org/­
* Such bug reports can be sent by email to bug-DBD-Informix@rt­.cpan.org;
they also get sent to dbd.informix@gmail.­com, etc.

As always, see the ChangeLog file for details about what has changed.

Jonathan Leffler (jleffler@us.ibm.co­m, jleffler@earthlink.­net)

@(#)$Id: Announce,v 2008.2 2008/05/13 03:03:31 jleffler Exp $



OptionsAdd comment
Tuesday, 13 May 2008
visual foxpro v5 tables ??? Mike Schleif 21:26:32
 A customer is using an application on top of visual foxpro v5.

I connect and do following:

@tables = $dbh->tables( $catalog, $schema, $table, $type );
for (sort @tables) { print $_, "\n" }

That returns tables in following format:

`C:\test\BCI\databa­se\DOLLAR2\amw.dbc`!­`prepmt`

For now, I am working with a copy of the production database. vfp uses
a database container (.DBC) and each table is a separate file (.DBF) in
same directory as DBC.

What is that prefix called?

`C:\test\BCI\databa­se\DOLLAR2\amw.dbc`

How can I programmatically get the above string into a variable?

The DSN in winders ODBC Data Source configuration points directly to
that file.

Since I will move code between this test box and the production server,
I want to automatically know that prefix, regardless which box I am on.

What do you think?

--
Best Regards,

Mike Schleif
mds resource
877.596.8237
-
Who do you know with idle cash or retirement funds that are not getting
a well-secured, double digit return?
--
OptionsAdd comment
DBD-ODBC and DBI 1.21 Jbeadles 11:01:54
 I've been forced to upgrade a server to Activestate Perl 5.10 on Win2K
because of new module that does not appear to be available under
earlier versions.

A big complication is that the machine is behind a firewall, and PPM
cannot be used to install modules. I've had to download and install
about 30 modules by hand, and have resolved all issues except for this
one

This upgrade is requiring me to reload DBI and DBD-ODBC. The issue is
that the DBD-ODBC install fails because it requires DBI 1.21. Googling
everything I can find over the past couple of days indicates that this
is a popular problem. The problem is that I can't find an Activestate
compatible version of DBI 1.21, and can't get the CPAN version to
make. I've looked in the Activestate folders of downloadable zips for
all Perl releases, and 1.21 does not exist. I've found:

5xx - 1.14
6xx - 1.34, 1.35, 1.37, 1.48
8xx - 1.35 - 1.602
10xx - 1.602

But no 1.21. I attempted to download DBI 1.21 from CPAN and build it
using NMAKE fails with the following error:

E:\DEV\Docs\perl_mo­ds_5.10\DBI_1.21\ung­z\DBI-1.21>nmake

Microsoft (R) Program Maintenance Utility Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

C:\Perl\bin\perl.ex­e -MExtUtils::Command­ -e cp Changes blib
\lib/DBI/Chan
ges.pm
cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -
D_CONSOLE -DNO_ST
RICT -DHAVE_DES_FCRYPT -DUSE_SITECUSTOMIZE­ -DPRIVLIB_LAST_IN_I­NC -
DPERL_IMPLICIT
_CONTEXT -DPERL_IMPLICIT_SYS­ -DUSE_PERLIO -DPERL_MSVCRT_READF­IX -MD -
Zi -DNDEBUG
-O1 -DVERSION=\"1.21\" -DXS_VERSION=\"1.21­\" "-IC:\Perl\lib
\CORE" Perl.c

'cl' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'C:\WINNT\system32\­cmd.exe' : return code
'0x1'
Stop.


What to do now? Or am I just doing something stupid?


Optionscomment 5 answers | Add comment
Cannot see AND Windows system DSN's using DBD-ODBC Steven Perreau 00:29:08
 Hello.



I'm having terrible trouble with www.troubleticketex­press.com
<http://www.trouble­ticketexpress.com/> getting their SQL module to
work. I have done a support case with them, they say it's a permissions
issue and not their script helpdesk support software.



I am running MS SBS on Windows 2003 SP2

IIS 6.0

SQL 2000 with SP4

DBD-ODBC V1.15

ActivePerl V5.10.0.1002



I have a DB created in SQL.

I have an ODBC System DSN created using MS Control Panel (in there a few
of them for other things already)

The ODBC DSN works fine and tests ok inside control panel.



I have tried lots of options for the IIS Aplication Pools, using Local
Service, Local System, specified account, making sure that account has
DB_OWNER access and a correct MS logon inside SQL...



I just don't know where to go.





The perl script reports:

Error: No ODBC DSN records found on this server.
Please configure DSN prior to running this program.





Which is rubbish... but obviously it cannot seen ANY of the 5+ System
DSN's that are present.



What am I doing wrong?





Regards,


Steven Perreau



Optionscomment 1 answer | Add comment
Monday, 12 May 2008
DBD::mysql 4.007 released Patrick Galbraith 20:28:19
 I'm pleased to announce the release of DBD::mysql 4.007. This release contains the changes:

* Took out mysql_server_init call where not needed
* Complete re-write of test suit to use Test::More - tons of cleanups!
* Makefile.PL changes to use current user in 'make test' if not defined

The biggest change in this release is a completely re-written test suite now using Test::More. This was something I wanted to do for at least two years. Using Test::More for the test suite makes it so much easier to add, manage and understand the various tests that come with the driver.

The file is:

file: $CPAN/authors/id/C/­CA/CAPTTOFU/DBD-mysq­l-4.007.tar.gz
size: 123516 bytes
md5: 67a4d921acda942aeb0­e65a0023f2098

URL:
http://search.cpan.­org/~capttofu/DBD-my­sql-4.007

Thank you for using DBD::mysql!


--
Patrick Galbraith, Senior Programmer
Grazr - Easy feed grazing and sharing
http://www.grazr.co­m

Satyam Eva Jayate - Truth Alone Triumphs
Mundaka Upanishad




OptionsAdd comment
DBI::_new_handle leak? James R. Leu 15:02:20
 I'm searching for memory leaks in an application. Devel::LeakTrace::F­ast
has pointed me at DBI::_new_handle().­ I was wondering if anyone can
point out that I'm using bad versions, or if I'm mislead by the tool
(Devel::LeakTrace::­Fast).

I searched the mailing list and found:

http://www.mail-arc­hive.com/dbi-users@p­erl.org/msg28092.htm­l

Which seems to match what I'm seeing, except for the fact that
I'm not seeing the statement handles released after 120 calls.

So let me explain. I'm seeing a memory leaks in a daemon that
interacts with a MySQL database. I'm using Devel::LeakTrace::F­ast
to help track down the leaks. During a 15 minutes sample it says that
there where 148 "leaked" SVs which were created by DBI::_new_handle()

First, has anyone else tried using Devel::LeakTrace::F­ast? Are its
results reliable? Realizing that a report about leaks happening is an
application that I don't provide code for is not a valid report. What
is the minimum script I should use to try and provide a mechanism
to reproduce?

Second, is the 120 handle cache size modifiable by the user?

Here are the versions of software involved:
DBI 1.604
DBD::mysql 4.006
perl 5.8.8
Devel::LeakTrace::F­ast 0.11

Thank you in advance.
--
James R. Leu
jleu@mindspring.com­
Optionscomment 1 answer | Add comment
Sunday, 11 May 2008
parameters: ref vs rw John M. Dlugosz 02:34:01
 In S06, what is the difference between "is ref" and "is rw"? The text says that the rw may be converted to an lvalue, and that ref must already be. But what is that supposed to mean?

--John
Optionscomment 4 answer | Add comment
Saturday, 10 May 2008
Re: Compile-time checking of assignment to read-only variables John M. Dlugosz 17:54:40
 Patrick R. Michaud pmichaud-at-pobox.c­om |Perl 6| wrote:
Reasonable to expect it, yes -- but whether or not this rises to the
level of being a "requirement in the spec" may be a different matter.
I could envision the possibility that some otherwise-very-capa­ble
Perl 6 implementation might be better served by having such checks
performed at runtime (they have to be done there also) and leaving
compile-time checking as an optimization. I suspect this is what
Pugs did. Or an implementation might not have a clear-cut notion
of "compile time".
So, as long as the assignment is properly prevented, I think that
may be sufficient. (If the language designers decide otherwise,
that's okay with me too. :-)­


I'm interested in drafting standardeze verbage to specify these kinds of
details, and that is one of the issues. In general, optimization level
can change what is caught at compile time.

It is certainly possible to define the meaning unambiguously, regardless
of whether it is "compiled" per-se. This is really interesting once you
get into generics where the implementation =might= specialize the code
in advance or =might= do all run-time checks. It is important to
understand what range of behavior is allowed, guaranteed, and disallowed
in order to write portable code.

In the case of assignment to a variable declared as read-only, there are
clear "episodes" (to use my nomenclature thus far) of processing a
block. There is definitely a time when it digests the statement and
would only execute it if it was a BEGIN block, otherwise it files it
away for later. The filing away might itself be to another episode.
But there is a sequence point (using the term without precision as of
yet) before it digests the next statement. It should fail at this
point, with an allowed range of side-effects due to the running of the
grammar etc. at compile time, but clearly not running the code that's
being analyzed. Clearly if there was a BEGIN block it would have
already been done and cannot be undone.

Likewise, when are exception handlers brought on line, =exactly=, in the
sequence of things? Lots of details.

--John

OptionsAdd comment
Compile-time checking of assignment to read-only variables (Re: MMD distances) Carl M sak 15:14:36
 TSa (>):
sub bar ($x)
{
$x = 3; # error, $x is readonly
foo($x); # error, could hit rw Str
}

By the way, I hope it's possible to make the assignment `$x = 3` to
the read-only variable $x a compile-time error.

In fact, I hope this to such a degree that I would like it to be part
of a spec somewhere that a conforming Perl 6 compiler disallows
assignments to read-only variables. I find nothing to this effect in
S04 (but my grep-fu is imperfect, so I may just have missed it).

Pugs currently dies with a run-time error on this. Rakudo r27392 runs
it fine and sets $x = 3 as if $x wasn't read-only.

// Carl
Optionscomment 6 answers | Add comment
rt.cpan.org Ricardo SIGNES 00:32:57
 Alright, I know this is tangential to QA, but I'm trying to access
rt.cpan.org to update a bug on a module I'm working on. I can't log
into rt.cpan.org using my PAUSE credentials.

I emailed cpan-questions@best­practical.com a month ago, and again this
week, and received only an automated reply. I was assigned request
numbers 4655 and 4288, but I can't find these on fsck.com anywhere.

Can someone tell me:
(a) what I'm doing wrong
(b) where to find information on these reports
(c) whether there's a much more appropriate list for these questions

Thanks.

--
rjbs
Optionscomment 4 answer | Add comment
Friday, 9 May 2008
The Inf type TSa 19:40:36
 John M. Dlugosz wrote:
I wrote a complete treatment of Inf support.
Please take a look at "24.26 Infinite" on pages 116-119, and
"3.11.3 Infinities" on pages 26-27.

I have a lot to say to that. Please give me time.

Regards, TSa.
--

"The unavoidable price of reliability is simplicity" -- C.A.R. Hoare
1 + 2 + 3 + 4 + ... = -1/12 -- Srinivasa Ramanujan
Optionscomment 2 answer | Add comment
my TypeName $x; Jonathan Worthington 16:24:32
 Hi,

I'm looking for answers/clarificati­on on what (if taken as individual
programs) $x is in each case.

my Int $x; # $x is Int protoobject
say $x; # Int
say $x.WHAT; # Int

class Foo { }
my Foo $x; # $x is Foo protoobject
say $x; # Foo
say $x.WHAT; # Foo
# This means we can only assign to $x something that isa Foo?

role Bar { }
my Bar $x; # $x is ???
say $x; # ???
say $x.WHAT; # ???
# This means we can only assign to $x something that does Bar?

subset EvenInt of Int where { $_ % 2 == 0 };
my EvenInt $x; # $x is ???
say $x; # ???
say $x.WHAT; # Failure?
# This means we can only assign to $x something that matches the constraint

class Dog { }
class Cat { }
my Dog|Cat $x; # $x is ???
say $x; # ???
say $x.WHAT; # Failure?
# This means we can only assign to $x something that isa Dog or isa Cat

Thanks,

Jonathan
Optionscomment 11 answers | Add comment
MMD distances John M. Dlugosz 11:29:47
 TSa Thomas.Sandlass-at-­barco.com |Perl 6| wrote:
Coming back to how C++ handles static overloading. How is
the sort order of (int *), (int &), (int), (const int *),
(const int &), (const int), (int * const) and (const int * const)?
I'm too lazy to look up the details, sorry.

Without looking anything up in the standard,
int and int& are indistinguishable.
int* is a different type from int, and won't be confused.
const vs const int don't matter to the caller.

- const int& is preferred over int/int&.
- const int* is preferred over int*.

--John


Optionscomment 3 answer | Add comment
Thursday, 8 May 2008
Fw: How to Retrieve Table Name from Statement Handle Lamb Joseph 23:26:34
 To answer you question, for an Oracle environment I would like $sth->{TABLENAME} to contain a list.

my $tablename = $sth->{TABLENAME} ->[0] = First table
$tablename $sth->{TABLENAME} ->[1] = Second table

The $tablename value will be schema.tablename format.
For example:
schema.narf
schema.zord

Joseph Lamb


----- Forwarded Message ----
From: Alexander Foken <alexander@foken.de­>
To: Lamb Joseph <joseph_lamb@yahoo.­com>
Cc: dbi-users@perl.org
Sent: Wednesday, May 7, 2008 11:18:53 AM
Subject: Re: How to Retrieve Table Name from Statement Handle

Hmmm, and what do you think $sth->{TABLENAME} should contain after
executing the following SQL?

SELECT t1.foo,t2.bar FROM narf t1, zord t2 WHERE t1.ikes=t2.blurb

Alexander

On 07.05.2008 19:51, Lamb Joseph wrote:
I am creating a simple tool that will query one table and retrieve the data. Then this tool will turn the data into insert statements.
I was wondering if there was a way to retrieve the table name from the statement handle?
Similar to print "SQL statement contains $sth->{NUM_OF_FIELD­S} columns\n";
but like this
print "SQL statement table name is $sth->{TABLENAME} \n";
Joseph Lamb
___________________­____________________­____________________­____________________­_____
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo­.com/;_ylt=Ahu06i62s­R8HDtDypao8Wcj9tAcJ


--
Alexander Foken
mailto:alexander@fo­ken.de http://www.foken.de­/alexander/


___________________­____________________­____________________­____________________­_____
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo­.com/;_ylt=Ahu06i62s­R8HDtDypao8Wcj9tAcJ

Optionscomment 4 answer | Add comment
Building DBD::Oracle on XP w/ VC 2005 Christopher J Gerber 21:50:22
 First off, I am new to the list. If there is a FAQ, feel free to point
me there!

This morning I built DBD-Oracle-1.21 on my XP machine using Visual
Studio 2005. After building, I needed to copy the redistributable files
to blib/arch/auto/DBD/­Oracle, and I needed to embed the manifest into
Oracle.dll with the following command:

mt.exe -manifest Oracle.dll.manifest­ -outputresource:Ora­cle.dll;2

I also needed to include my SID in ORACLE_USERID:

set ORACLE_USERID=user/­password@tns_entry/O­RCL
^^^^^

After all this, things worked, *except* for two tests:

t/26exe_array......­.....ok 1/14
t/26exe_array......­.....NOK 11/14# Failed test '... we should have 19
tuple_status'
# at t/26exe_array.t line 120.
# got: 10
# expected: 19

t/26exe_array......­.....NOK 14/14# Failed test '... we should have 48
rows'
# at t/26exe_array.t line 146.
# got: 30
# expected: 48
# Looks like you failed 2 tests of 14.
t/26exe_array......­.....dubious
Test returned status 2 (wstat 512, 0x200)

I'm curious if others have seen these problems.

Chris

Optionscomment 4 answer | Add comment
[English] what is a flack? (Re: Minimal Distance) John M. Dlugosz 16:38:28
 TSa Thomas.Sandlass-at-­barco.com |Perl 6| wrote:
When I mentioned this before, there was big flack over mentioning the
way C++ did it. I think that must have been miscommunicated, since I
wasn't even talking about summing all the arguments when he brought
up "Manhattan dispatch".
BTW, what is a flack?


American slang, I suppose! It dates from World War II, from
/*Fl*ug*a*bwehr*k*a­none/ aircraft defense cannon. Bombers flying over
Axis teritory would be "taking flak" when they were being shot at. The
"flak jacket" they wore became the modern bulletproof vests, and the
term "flak" now means flying debris and shrapnel.

I think I used "flak" to refer to the situation of being bombarded by
small bits of debris rather than the debris itself because it sounds a
lot like "raise a flap", meaning an excited state of agitation. So I
think British "flap" has become American "flack".

--John
Optionscomment 1 answer | Add comment
Re: "All classes imply the existence of a role of the same name." John M. Dlugosz 13:19:26
 chromatic chromatic-at-wgz.or­g |Perl 6| wrote:
On Friday 02 May 2008 07:08:21 John M. Dlugosz wrote:
TSa Thomas.Sandlass-at-­barco.com |Perl 6| wrote:
Then, since classes are open, the programmer can easily say
CGI does CGI::Simple;
That would be
class CGI is also { does CGI::Simple }
and means that CGI::Simple is a role, meant to serve as an interface
specification. It's not, it is a whole class that works on its own.
All classes imply the existence of a role of the same name.
-- c

Please justify that.

--John
Optionscomment 12 answers | Add comment
Wednesday, 7 May 2008
How to Retrieve Table Name from Statement Handle Lamb Joseph 23:22:06
 I am creating a simple tool that will query one table and retrieve the data. Then this tool will turn the data into insert statements.

I was wondering if there was a way to retrieve the table name from the statement handle?

Similar to print "SQL statement contains $sth->{NUM_OF_FIELD­S} columns\n";

but like this

print "SQL statement table name is $sth->{TABLENAME} \n";


Joseph Lamb



___________________­____________________­____________________­____________________­_____
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo­.com/;_ylt=Ahu06i62s­R8HDtDypao8Wcj9tAcJ

Optionscomment 2 answer | Add comment
[svn:perl6-synopsis]­ r14541 - doc/trunk/design/sy­n Guest 20:07:48
 Author: larry
Date: Wed May 7 09:07:46 2008
New Revision: 14541

Modified:
doc/trunk/design/sy­n/S05.pod

Log:
[S05] better characterize Match and Cursor methods


Modified: doc/trunk/design/sy­n/S05.pod
===================­====================­====================­===================
--- doc/trunk/design/sy­n/S05.pod (original)
+++ doc/trunk/design/sy­n/S05.pod Wed May 7 09:07:46 2008
@@ -14,9 +14,9 @@
Maintainer: Patrick Michaud <pmichaud@pobox.com­> and
Larry Wall <larry@wall.org>
Date: 24 Jun 2002
- Last Modified: 29 Apr 2008
+ Last Modified: 7 May 2008
Number: 5
- Version: 77
+ Version: 78

This document summarizes Apocalypse 5, which is about the new regex
syntax. We now try to call them I<regex> rather than "regular
@@ -736,15 +736,14 @@
dealing with.

The C<Cursor> object can also return the original item that we are
-matching against; this is available from the C<._> method, named to
-remind you that it probably came from the user's C<$_> variable.
-(But that may well be off in some other scope when indirect rules
-are called, so we mustn't rely on the user's lexical scope.)
+matching against; this is available from the C<.orig> method.

The closure is also guaranteed to start with a C<$/> C<Match> object
representing the match so far. However, if the closure does its own
internal matching, its C<$/> variable will be rebound to the result
-of I<that> match until the end of the embedded closure.
+of I<that> match until the end of the embedded closure. (The match
+will actually continue with the current value of the C<$ > object after
+the closure. C<$/> and C<$ > just start out the same in your closure.)

=item *

@@ -2201,7 +2200,7 @@
subroutine that is calling the regex. (A regex declares its own
lexical C<$/> variable, which always refers to the most recent
submatch within the rule, if any.) The current match state is
-kept in the regex's C<$_> variable which will eventually get
+kept in the regex's C<$ > variable which will eventually get
processed into the user's C<$/> variable when the match completes.

=item *
@@ -2350,6 +2349,22 @@
"to index $/.to.bytes";
}

+The currently defined methods are
+
+ $/.from # the initial match position
+ $/.to # the final match position
+ $/.chars # $/.to - $/.from
+ $/.orig # the original match string
+ $/.text # substr($/.orig, $/.from, $/.chars)
+
+Within the regex the current match state C<$ > also provides
+
+ .pos # the current match position
+
+This last value may correspond to either C<$ .from> or C<$ .to> depending
+on whether the match is proceeding in a forward or backward direction
+(the latter case arising inside an C<< <?after ...> >> assertion).
+
=item *

All match attempts--successfu­l or not--against any regex, subrule, or
OptionsAdd comment
Minimal Distance (Re: Where is "Manhattan Dispatch" discussion?) John M. Dlugosz 17:52:00
 Mark A. Biggar mark-at-biggar.org |Perl 6| wrote:
To do multi method dispatch, you want to select the method that best
matches the parameters in the call. One way to do that is to define a
measure for distances between types and they use the method that's at
the minimum distance. One simple measure is that a type is distance 0
from itself and distance 1 from it's immediate super-types, distance 2
from the immediate super-types of it's immediate super-types, etc.
When dispatching over a single parameter picking the method at the
minimum distance is the usual most specific type match. But when you
want to do multi-method dispatch, you need some rule to combine the
various distances of the individual parameters into a single measure
value, then pick the method at the minimum distance by that combined
measure. "Manhattan Distance" or "Taxicab Distance" is the rule that
the combined distance is just the simple unweighted sum of the
individual parameter distances. The is named after the fact that a
taxi must follow the streets and to go 3 block north and 4 blocks west
it must travel 7 blocks not the 5 blocks of the euclidean distance.


OK, so basically the fit is the sum of the fits of all the parameters.
If form A has a distance of 2 for the first argument and 5 for the
second, and form B has a distance of 0 for the first and 10 for the
second, form A is better.

I heard this term come up the other day with respect to matching value
types =and= other attributes such as rw or ref-ness. I thought he meant
that these were different directions like streets and avenues, of one
parameter.

I have problems with a simple sum. The "distance" is artificially
inflated if you make lots of small derivation steps vs one large
change. The concept of derivation steps is ill-defined for
parameterized types and types that change virtual type names during
derivation so there is no subtype relationship.

In C++, which must be resolved at compile time, the overloading
resolution mechanism demands that =every= parameter be at least as good
of a match, and one strictly better match. So the implementation never
guesses if worse-left/better-r­ight is a better fit than
better-left/worse-r­ight. However, you are assured that everything is
brought to your attention at program build time, before run time, so
complaining is not as serious as a run-time error where you might prefer
DWIM.

--John
Optionscomment 9 answers | Add comment
Unable to install DBD::ODBC on OSX Leopard 10.5.2 Alexander Medina 12:16:02
 I apologize if this is redundant as I know there have been previous
posts regarding this issue. However, I have not been able to find any
resolution in any of those posts.
Here are my versions of the various components :

Hardware: Apple Xserver
OS: OSX Leopard 10.5.2
Unix version: 9.2.0 Darwin Kernel Version 9.2.0
Perl: 5.8.8
DBI: 1.52
DBD:ODBC: 1.15
unixODBC: 2.2.12
freeTDS: 0.83 dev 20080402
DB type: SQL Server

So, I'm pretty sure I have the latest of everything. I have
successfully installed the unixODBC w/ freeTDS drivers component.
Testing using isql to make the connection successfully returns data
from the SQL Server. Everything is fine up until the point I try to
compile the DBD::ODBC module using make. I'm starting to think that
this is a compatibilty issue, because I proceeded to install the
DBD::Sybase module, and receive pretty much the exact same errors at
the same points. Much thanks in advance... /Alex Medina

Here is the output of my 'make test'

dbdimp.c: In function 'odbc_db_login6':
dbdimp.c:582: warning: pointer targets in passing argument 3 of
'SQLDriverConnect' differ in signedness
dbdimp.c:582: warning: pointer targets in passing argument 5 of
'SQLDriverConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 2 of
'SQLConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 4 of
'SQLConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 6 of
'SQLConnect' differ in signedness
dbdimp.c: In function 'odbc_db_login6':
dbdimp.c:582: warning: pointer targets in passing argument 3 of
'SQLDriverConnect' differ in signedness
dbdimp.c:582: warning: pointer targets in passing argument 5 of
'SQLDriverConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 2 of
'SQLConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 4 of
'SQLConnect' differ in signedness
dbdimp.c:641: warning: pointer targets in passing argument 6 of
'SQLConnect' differ in signedness
dbdimp.c: In function 'dbd_error2':
dbdimp.c:997: warning: pointer targets in passing argument 2 of
'Perl_newSVpv' differ in signedness
dbdimp.c:998: warning: pointer targets in passing argument 2 of
'Perl_newSVpv' differ in signedness
dbdimp.c:1019: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1020: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1020: warning: pointer targets in passing argument 2 of
'strcat' differ in signedness
dbdimp.c:1021: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1025: warning: pointer targets in passing argument 1 of
'strcmp' differ in signedness
dbdimp.c:1026: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1030: warning: pointer targets in passing argument 5 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1030: warning: pointer targets in passing argument 6 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1032: warning: pointer targets in passing argument 5 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1032: warning: pointer targets in passing argument 6 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c: In function 'dbd_error2':
dbdimp.c:997: warning: pointer targets in passing argument 2 of
'Perl_newSVpv' differ in signedness
dbdimp.c:998: warning: pointer targets in passing argument 2 of
'Perl_newSVpv' differ in signedness
dbdimp.c:1019: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1020: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1020: warning: pointer targets in passing argument 2 of
'strcat' differ in signedness
dbdimp.c:1021: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1025: warning: pointer targets in passing argument 1 of
'strcmp' differ in signedness
dbdimp.c:1026: warning: pointer targets in passing argument 1 of
'strcat' differ in signedness
dbdimp.c:1030: warning: pointer targets in passing argument 5 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1030: warning: pointer targets in passing argument 6 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1032: warning: pointer targets in passing argument 5 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c:1032: warning: pointer targets in passing argument 6 of
'imp_xxh->com.std.d­bistate->set_err_cha­r' differ in signedness
dbdimp.c: In function 'odbc_st_tables':
dbdimp.c:1298: warning: pointer targets in passing argument 2 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 4 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 6 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 8 of
'SQLTables' differ in signedness
dbdimp.c: In function 'odbc_st_primary_ke­ys':
dbdimp.c:1358: warning: pointer targets in passing argument 2 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c:1358: warning: pointer targets in passing argument 4 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c:1358: warning: pointer targets in passing argument 6 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c: In function 'odbc_st_tables':
dbdimp.c:1298: warning: pointer targets in passing argument 2 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 4 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 6 of
'SQLTables' differ in signedness
dbdimp.c:1298: warning: pointer targets in passing argument 8 of
'SQLTables' differ in signedness
dbdimp.c: In function 'odbc_st_prepare':
dbdimp.c:1438: warning: pointer targets in passing argument 2 of
'SQLPrepare' differ in signedness
dbdimp.c: In function 'odbc_st_primary_ke­ys':
dbdimp.c:1358: warning: pointer targets in passing argument 2 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c:1358: warning: pointer targets in passing argument 4 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c:1358: warning: pointer targets in passing argument 6 of
'SQLPrimaryKeys' differ in signedness
dbdimp.c: In function 'odbc_st_prepare':
dbdimp.c:1438: warning: pointer targets in passing argument 2 of
'SQLPrepare' differ in signedness
dbdimp.c: In function 'odbc_st_execute':
dbdimp.c:1969: warning: pointer targets in passing argument 2 of
'SQLExecDirect' differ in signedness
dbdimp.c:2010: warning: pointer targets in assignment differ in signedness
dbdimp.c: In function 'odbc_st_execute':
dbdimp.c:1969: warning: pointer targets in passing argument 2 of
'SQLExecDirect' differ in signedness
dbdimp.c:2010: warning: pointer targets in assignment differ in signedness
dbdimp.c: In function '_dbd_rebind_ph':
dbdimp.c:2742: warning: pointer targets in assignment differ in signedness
dbdimp.c:2745: warning: pointer targets in assignment differ in signedness
dbdimp.c:2753: warning: pointer targets in assignment differ in signedness
dbdimp.c: In function '_dbd_rebind_ph':
dbdimp.c:2742: warning: pointer targets in assignment differ in signedness
dbdimp.c:2745: warning: pointer targets in assignment differ in signedness
dbdimp.c:2753: warning: pointer targets in assignment differ in signedness
dbdimp.c: At top level:
dbdimp.c:3019: warning: declaration does not declare anything
dbdimp.c:3019: warning: no semicolon at end of struct or union
dbdimp.c:3019: error: syntax error before numeric constant
dbdimp.c:3021: warning: data definition has no type or storage class
dbdimp.c:3023: error: syntax error before 'S_db_storeOptions'­
dbdimp.c:3024: warning: braces around scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: initialization makes integer from pointer without a cast
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3033: warning: braces around scalar initializer
dbdimp.c:3033: warning: (near initialization for 'S_db_storeOptions[1]'­)
dbdimp.c:3033: warning: initialization makes integer from pointer without a cast
dbdimp.c:3033: warning: excess elements in scalar initializer
dbdimp.c:3033: warning: (near initialization for 'S_db_storeOptions[1]'­)
dbdimp.c:3034: warning: braces around scalar initializer
dbdimp.c:3034: warning: (near initialization for 'S_db_storeOptions[2]'­)
dbdimp.c:3034: warning: initialization makes integer from pointer without a cast
dbdimp.c:3034: warning: excess elements in scalar initializer
dbdimp.c:3034: warning: (near initialization for 'S_db_storeOptions[2]'­)
dbdimp.c:3035: warning: braces around scalar initializer
dbdimp.c:3035: warning: (near initialization for 'S_db_storeOptions[3]'­)
dbdimp.c:3035: warning: initialization makes integer from pointer without a cast
dbdimp.c:3035: warning: excess elements in scalar initializer
dbdimp.c:3035: warning: (near initialization for 'S_db_storeOptions[3]'­)
dbdimp.c:3036: warning: braces around scalar initializer
dbdimp.c:3036: warning: (near initialization for 'S_db_storeOptions[4]'­)
dbdimp.c:3036: warning: initialization makes integer from pointer without a cast
dbdimp.c:3036: warning: excess elements in scalar initializer
dbdimp.c:3036: warning: (near initialization for 'S_db_storeOptions[4]'­)
dbdimp.c:3037: warning: braces around scalar initializer
dbdimp.c:3037: warning: (near initialization for 'S_db_storeOptions[5]'­)
dbdimp.c:3037: warning: initialization makes integer from pointer without a cast
dbdimp.c:3037: warning: excess elements in scalar initializer
dbdimp.c:3037: warning: (near initialization for 'S_db_storeOptions[5]'­)
dbdimp.c:3038: warning: braces around scalar initializer
dbdimp.c:3038: warning: (near initialization for 'S_db_storeOptions[6]'­)
dbdimp.c:3038: warning: initialization makes integer from pointer without a cast
dbdimp.c:3038: warning: excess elements in scalar initializer
dbdimp.c:3038: warning: (near initialization for 'S_db_storeOptions[6]'­)
dbdimp.c:3039: warning: braces around scalar initializer
dbdimp.c:3039: warning: (near initialization for 'S_db_storeOptions[7]'­)
dbdimp.c:3039: warning: initialization makes integer from pointer without a cast
dbdimp.c:3039: warning: excess elements in scalar initializer
dbdimp.c:3039: warning: (near initialization for 'S_db_storeOptions[7]'­)
dbdimp.c:3040: warning: braces around scalar initializer
dbdimp.c:3040: warning: (near initialization for 'S_db_storeOptions[8]'­)
dbdimp.c:3040: warning: initialization makes integer from pointer without a cast
dbdimp.c:3040: warning: excess elements in scalar initializer
dbdimp.c:3040: warning: (near initialization for 'S_db_storeOptions[8]'­)
dbdimp.c:3041: warning: braces around scalar initializer
dbdimp.c:3041: warning: (near initialization for 'S_db_storeOptions[9]'­)
dbdimp.c:3041: warning: initialization makes integer from pointer without a cast
dbdimp.c:3041: warning: excess elements in scalar initializer
dbdimp.c:3041: warning: (near initialization for 'S_db_storeOptions[9]'­)
dbdimp.c:3042: warning: braces around scalar initializer
dbdimp.c:3042: warning: (near initialization for 'S_db_storeOptions[10]'­)
dbdimp.c:3042: warning: initialization makes integer from pointer without a cast
dbdimp.c:3042: warning: excess elements in scalar initializer
dbdimp.c:3042: warning: (near initialization for 'S_db_storeOptions[10]'­)
dbdimp.c:3043: warning: braces around scalar initializer
dbdimp.c:3043: warning: (near initialization for 'S_db_storeOptions[11]'­)
dbdimp.c:3043: warning: initialization makes integer from pointer without a cast
dbdimp.c:3044: warning: data definition has no type or storage class
dbdimp.c:3046: error: syntax error before '*' token
dbdimp.c:3047: error: syntax error before '*' token
dbdimp.c: In function 'S_dbOption':
dbdimp.c:3050: error: 'pars' undeclared (first use in this function)
dbdimp.c:3050: error: (Each undeclared identifier is reported only once
dbdimp.c:3050: error: for each function it appears in.)
dbdimp.c:3051: error: 'key' undeclared (first use in this function)
dbdimp.c:3051: error: 'len' undeclared (first use in this function)
dbdimp.c: In function 'odbc_db_STORE_attr­ib':
dbdimp.c:3077: error: nested functions are disabled, use
-fnested-functions to re-enable
dbdimp.c:3077: error: syntax error before '*' token
dbdimp.c:3080: error: 'pars' undeclared (first use in this function)
dbdimp.c: At top level:
dbdimp.c:3019: warning: declaration does not declare anything
dbdimp.c:3019: warning: no semicolon at end of struct or union
dbdimp.c:3019: error: syntax error before numeric constant
dbdimp.c:3021: warning: data definition has no type or storage class
dbdimp.c:3023: error: syntax error before 'S_db_storeOptions'­
dbdimp.c:3024: warning: braces around scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: initialization makes integer from pointer without a cast
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3024: warning: excess elements in scalar initializer
dbdimp.c:3024: warning: (near initialization for 'S_db_storeOptions[0]'­)
dbdimp.c:3033: warning: braces around scalar initializer
dbdimp.c:3033: warning: (near initialization for 'S_db_storeOptions[1]'­)
dbdimp.c:3033: warning: initialization makes integer from pointer without a cast
dbdimp.c:3033: warning: excess elements in scalar initializer
dbdimp.c:3033: warning: (near initialization for 'S_db_storeOptions[1]'­)
dbdimp.c:3034: warning: braces around scalar initializer
dbdimp.c:3034: warning: (near initialization for 'S_db_storeOptions[2]'­)
dbdimp.c:3034: warning: initialization makes integer from pointer without a cast
dbdimp.c:3034: warning: excess elements in scalar initializer
dbdimp.c:3034: warning: (near initialization for 'S_db_storeOptions[2]'­)
dbdimp.c:3035: warning: braces around scalar initializer
dbdimp.c:3035: warning: (near initialization for 'S_db_storeOptions[3]'­)
dbdimp.c:3035: warning: initialization makes integer from pointer without a cast
dbdimp.c:3035: warning: excess elements in scalar initializer
dbdimp.c:3035: warning: (near initialization for 'S_db_storeOptions[3]'­)
dbdimp.c:3036: warning: braces around scalar initializer
dbdimp.c:3036: warning: (near initialization for 'S_db_storeOptions[4]'­)
dbdimp.c:3036: warning: initialization makes integer from pointer without a cast
dbdimp.c:3036: warning: excess elements in scalar initializer
dbdimp.c:3036: warning: (near initialization for 'S_db_storeOptions[4]'­)
dbdimp.c:3037: warning: braces around scalar initializer
dbdimp.c:3037: warning: (near initialization for 'S_db_storeOptions[5]'­)
dbdimp.c:3037: warning: initialization makes integer from pointer without a cast
dbdimp.c:3037: warning: excess elements in scalar initializer
dbdimp.c:3037: warning: (near initialization for 'S_db_storeOptions[5]'­)
dbdimp.c:3038: warning: braces around scalar initializer
dbdimp.c:3038: warning: (near initialization for 'S_db_storeOptions[6]'­)
dbdimp.c:3038: warning: initialization makes integer from pointer without a cast
dbdimp.c:3038: warning: excess elements in scalar initializer
dbdimp.c:3038: warning: (near initialization for 'S_db_storeOptions[6]'­)
dbdimp.c:3039: warning: braces around scalar initializer
dbdimp.c:3039: warning: (near initialization for 'S_db_storeOptions[7]'­)
dbdimp.c:3039: warning: initialization makes integer from pointer without a cast
dbdimp.c:3039: warning: excess elements in scalar initializer
dbdimp.c:3039: warning: (near initialization for 'S_db_storeOptions[7]'­)
dbdimp.c:3040: warning: braces around scalar initializer
dbdimp.c:3040: warning: (near initialization for 'S_db_storeOptions[8]'­)
dbdimp.c:3040: warning: initialization makes integer from pointer without a cast
dbdimp.c:3040: warning: excess elements in scalar initializer
dbdimp.c:3040: warning: (near initialization for 'S_db_storeOptions[8]'­)
dbdimp.c:3041: warning: braces around scalar initializer
dbdimp.c:3041: warning: (near initialization for 'S_db_storeOptions[9]'­)
dbdimp.c:3041: warning: initialization makes integer from pointer without a cast
dbdimp.c:3041: warning: excess elements in scalar initializer
dbdimp.c:3041: warning: (near initialization for 'S_db_storeOptions[9]'­)
dbdimp.c:3042: warning: braces around scalar initializer
dbdimp.c:3042: warning: (near initialization for 'S_db_storeOptions[10]'­)
dbdimp.c:3042: warning: initialization makes integer from pointer without a cast
dbdimp.c:3042: warning: excess elements in scalar initializer
dbdimp.c:3042: warning: (near initialization for 'S_db_storeOptions[10]'­)
dbdimp.c:3043: warning: braces around scalar initializer
dbdimp.c:3043: warning: (near initialization for 'S_db_storeOptions[11]'­)
dbdimp.c:3043: warning: initialization makes integer from pointer without a cast
dbdimp.c:3044: warning: data definition has no type or storage class
dbdimp.c:3046: error: syntax error before '*' token
dbdimp.c:3047: error: syntax error before '*' token
dbdimp.c: In function 'S_dbOption':
dbdimp.c:3050: error: 'pars' undeclared (first use in this function)
dbdimp.c:3050: error: (Each undeclared identifier is reported only once
dbdimp.c:3050: error: for each function it appears in.)
dbdimp.c:3051: error: 'key' undeclared (first use in this function)
dbdimp.c:3051: error: 'len' undeclared (first use in this function)
dbdimp.c:3272: error: syntax error before numeric constant
dbdimp.c: In function 'odbc_db_STORE_attr­ib':
dbdimp.c:3077: error: nested functions are disabled, use
-fnested-functions to re-enable
dbdimp.c:3077: error: syntax error before '*' token
dbdimp.c:3080: error: 'pars' undeclared (first use in this function)
dbdimp.c: At top level:
dbdimp.c:3291: error: syntax error before 'S_db_fetchOptions'­
dbdimp.c:3292: warning: braces around scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: initialization makes integer from pointer without a cast
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3293: warning: braces around scalar initializer
dbdimp.c:3293: warning: (near initialization for 'S_db_fetchOptions[1]'­)
dbdimp.c:3293: warning: initialization makes integer from pointer without a cast
dbdimp.c:3293: warning: excess elements in scalar initializer
dbdimp.c:3293: warning: (near initialization for 'S_db_fetchOptions[1]'­)
dbdimp.c:3302: warning: braces around scalar initializer
dbdimp.c:3302: warning: (near initialization for 'S_db_fetchOptions[2]'­)
dbdimp.c:3302: warning: initialization makes integer from pointer without a cast
dbdimp.c:3302: warning: excess elements in scalar initializer
dbdimp.c:3302: warning: (near initialization for 'S_db_fetchOptions[2]'­)
dbdimp.c:3303: warning: braces around scalar initializer
dbdimp.c:3303: warning: (near initialization for 'S_db_fetchOptions[3]'­)
dbdimp.c:3303: warning: initialization makes integer from pointer without a cast
dbdimp.c:3303: warning: excess elements in scalar initializer
dbdimp.c:3303: warning: (near initialization for 'S_db_fetchOptions[3]'­)
dbdimp.c:3304: warning: braces around scalar initializer
dbdimp.c:3304: warning: (near initialization for 'S_db_fetchOptions[4]'­)
dbdimp.c:3304: warning: initialization makes integer from pointer without a cast
dbdimp.c:3304: warning: excess elements in scalar initializer
dbdimp.c:3304: warning: (near initialization for 'S_db_fetchOptions[4]'­)
dbdimp.c:3305: warning: braces around scalar initializer
dbdimp.c:3305: warning: (near initialization for 'S_db_fetchOptions[5]'­)
dbdimp.c:3305: warning: initialization makes integer from pointer without a cast
dbdimp.c:3305: warning: excess elements in scalar initializer
dbdimp.c:3305: warning: (near initialization for 'S_db_fetchOptions[5]'­)
dbdimp.c:3306: warning: braces around scalar initializer
dbdimp.c:3306: warning: (near initialization for 'S_db_fetchOptions[6]'­)
dbdimp.c:3306: warning: initialization makes integer from pointer without a cast
dbdimp.c:3306: warning: excess elements in scalar initializer
dbdimp.c:3306: warning: (near initialization for 'S_db_fetchOptions[6]'­)
dbdimp.c:3307: warning: braces around scalar initializer
dbdimp.c:3307: warning: (near initialization for 'S_db_fetchOptions[7]'­)
dbdimp.c:3307: warning: initialization makes integer from pointer without a cast
dbdimp.c:3307: warning: excess elements in scalar initializer
dbdimp.c:3307: warning: (near initialization for 'S_db_fetchOptions[7]'­)
dbdimp.c:3308: warning: braces around scalar initializer
dbdimp.c:3308: warning: (near initialization for 'S_db_fetchOptions[8]'­)
dbdimp.c:3272: error: syntax error before numeric constant
dbdimp.c:3308: warning: initialization makes integer from pointer without a cast
dbdimp.c:3308: warning: excess elements in scalar initializer
dbdimp.c:3308: warning: (near initialization for 'S_db_fetchOptions[8]'­)
dbdimp.c:3309: warning: braces around scalar initializer
dbdimp.c:3309: warning: (near initialization for 'S_db_fetchOptions[9]'­)
dbdimp.c:3309: warning: initialization makes integer from pointer without a cast
dbdimp.c:3309: warning: excess elements in scalar initializer
dbdimp.c:3309: warning: (near initialization for 'S_db_fetchOptions[9]'­)
dbdimp.c:3310: warning: braces around scalar initializer
dbdimp.c:3310: warning: (near initialization for 'S_db_fetchOptions[10]'­)
dbdimp.c:3310: warning: initialization makes integer from pointer without a cast
dbdimp.c:3310: warning: excess elements in scalar initializer
dbdimp.c:3310: warning: (near initialization for 'S_db_fetchOptions[10]'­)
dbdimp.c:3311: warning: braces around scalar initializer
dbdimp.c:3311: warning: (near initialization for 'S_db_fetchOptions[11]'­)
dbdimp.c:3311: warning: initialization makes integer from pointer without a cast
dbdimp.c:3311: warning: excess elements in scalar initializer
dbdimp.c:3311: warning: (near initialization for 'S_db_fetchOptions[11]'­)
dbdimp.c:3312: warning: braces around scalar initializer
dbdimp.c:3312: warning: (near initialization for 'S_db_fetchOptions[12]'­)
dbdimp.c:3312: warning: initialization makes integer from pointer without a cast
dbdimp.c:3312: warning: excess elements in scalar initializer
dbdimp.c:3312: warning: (near initialization for 'S_db_fetchOptions[12]'­)
dbdimp.c:3313: warning: braces around scalar initializer
dbdimp.c:3313: warning: (near initialization for 'S_db_fetchOptions[13]'­)
dbdimp.c:3313: warning: initialization makes integer from pointer without a cast
dbdimp.c:3314: warning: data definition has no type or storage class
dbdimp.c: In function 'odbc_db_FETCH_attr­ib':
dbdimp.c:3328: error: nested functions are disabled, use
-fnested-functions to re-enable
dbdimp.c:3328: error: syntax error before '*' token
dbdimp.c:3337: error: 'pars' undeclared (first use in this function)
dbdimp.c: At top level:
dbdimp.c:3291: error: syntax error before 'S_db_fetchOptions'­
dbdimp.c:3292: warning: braces around scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: initialization makes integer from pointer without a cast
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3292: warning: excess elements in scalar initializer
dbdimp.c:3292: warning: (near initialization for 'S_db_fetchOptions[0]'­)
dbdimp.c:3293: warning: braces around scalar initializer
dbdimp.c:3293: warning: (near initialization for 'S_db_fetchOptions[1]'­)
dbdimp.c:3293: warning: initialization makes integer from pointer without a cast
dbdimp.c:3293: warning: excess elements in scalar initializer
dbdimp.c:3293: warning: (near initialization for 'S_db_fetchOptions[1]'­)
dbdimp.c:3302: warning: braces around scalar initializer
dbdimp.c:3302: warning: (near initialization for 'S_db_fetchOptions[2]'­)
dbdimp.c:3302: warning: initialization makes integer from pointer without a cast
dbdimp.c:3302: warning: excess elements in scalar initializer
dbdimp.c:3302: warning: (near initialization for 'S_db_fetchOptions[2]'­)
dbdimp.c:3303: warning: braces around scalar initializer
dbdimp.c:3303: warning: (near initialization for 'S_db_fetchOptions[3]'­)
dbdimp.c:3303: warning: initialization makes integer from pointer without a cast
dbdimp.c:3303: warning: excess elements in scalar initializer
dbdimp.c:3303: warning: (near initialization for 'S_db_fetchOptions[3]'­)
dbdimp.c:3304: warning: braces around scalar initializer
dbdimp.c:3304: warning: (near initialization for 'S_db_fetchOptions[4]'­)
dbdimp.c:3438: error: syntax error befor