Re: Allowing for schema.table format in SQL::Statement

Jens Rehsack <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.sybase.devel
Message-ID <CAANR1XFu4T1qyV_uwf8AYRWHg=B7HBZ2bqOy5x4GMHy8d6fAew@mail.gmail.com>
2011/11/22 Brendan Byrd <[email protected]>:
> (Adding dbi-dev to conversation for
> https://rt.cpan.org/Ticket/Display.html?id=72588)
>
> Still debugging DBD::SNMP right now, and I'm currently fighting with
> SQL::Statement to allow for schema.table formats. The idea would that it
> would be possible to reference the MIB name within the table, like
> IF_MIB.ifTable for IF-MIB::ifTable. However, I'm finding all kinds of code
> that strips the schema from the table name.

As far as I know, snmp tables doesn't have a scheme - they might (or might not)
have a unique dot separated identifier path.

Let's take dskTable as example. It's full qualified oid is ".1.3.6.1.4.1.2021.9"
or "enterprises.ucd.9" yada-yada-yada.

How do you expect the schema.table support can help you and how it is
required to be changed from current implementation (see DBD::File how
currently it's used).

Another example is smProcessStatus - or "enterprises.smart-snmpd.10.7"
which has it's table at smProcessTable.1 or "1.3.6.1.4.1.36539.10.7.7.1".
Or smDiskIoStatus (enterprises.smart-snmpd.20.1), which contains two
tables: smDiskIoTable and smDiskIoIntervalTable.

For details about this mib, you've currently have to download the
tarballs from http://www.netbsd.org/~sno/smart-snmpd/.

Nevertheless, I do not understand what kind of different schema
handling would really help you on this.

> So far, I've found code in parse, TABLE_NAME, IDENTIFIER, and open_tables.
> So it seems that SQL::Statement -really- wants to remove the schema. What
> kind of pitfalls would I encounter if I allowed for a schema.table format?
> I have removed the code to test with, and it appears to work just fine (so
> far).  For IDENTIFIER, I added this:
>
> return $self->IDENTIFIER($1) && $self->IDENTIFIER($2) if ( $id =~
> m/^(.+)\.([^\.]+)$/ ); # check both schema/table
>
> I'd like to turn this into a patch, since I have a need to have these
> available.  Given that this is a change to the general functionality of
> SQL::Statement, I'm open to adding this in as a flag of some sort.

Did you try all tests of SQL::Statement, DBD::File, DBD::DBM and DBD::CSV
to prove against unexpected side effects? How do you add the compatible
change to DBI::SQL::Nano?



> --
> Brendan Byrd/SineSwiper <[email protected]>
> Computer tech, Perl wizard, and all-around Internet guru
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.