[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

[bug] DBD::ODBC

jc

12/28/2004 6:25:00 PM

I've run into a small bug with DBD::ODBC. The following code:

require 'dbi'
dbh = DBI.connect("DBI:ODBC:dsn", "user", "pass")
puts dbh.columns('table').collect { |c| c.name }

produced the following error:

/ruby/lib/ruby/site_ruby/1.8/DBD/ODBC/ODBC.rb:127 in 'columns'
undefined method '-' for nil:NilClass (NoMethodError

This relates to the following line in ODBC.rb (line 127)

info['precision'] = row['COLUMN_SIZE'] - (row['DECIMAL_DIGITS'] || 0)

It appears this needs to be changed to the following:

info['precision'] = (row['COLUMN_SIZE'] || 0) - (row['DECIMAL_DIGITS']
|| 0)

In case of situations where COLUMN_SIZE is undefined.

5 Answers

Michael Neumann

12/31/2004 3:35:00 PM

0

jc wrote:
> I've run into a small bug with DBD::ODBC. The following code:
>
> require 'dbi'
> dbh = DBI.connect("DBI:ODBC:dsn", "user", "pass")
> puts dbh.columns('table').collect { |c| c.name }
>
> produced the following error:
>
> /ruby/lib/ruby/site_ruby/1.8/DBD/ODBC/ODBC.rb:127 in 'columns'
> undefined method '-' for nil:NilClass (NoMethodError
>
> This relates to the following line in ODBC.rb (line 127)
>
> info['precision'] = row['COLUMN_SIZE'] - (row['DECIMAL_DIGITS'] || 0)
>
> It appears this needs to be changed to the following:
>
> info['precision'] = (row['COLUMN_SIZE'] || 0) - (row['DECIMAL_DIGITS']
> || 0)
>

maybe it's even better to return nil, if column_size is not set.
because, imagine decimal_digits is set, then a negative value is returned.

The following is now commited to SVN (see patch below).u

Regards,

Michael

Index: ODBC.rb
===================================================================
--- ODBC.rb (revision 415)
+++ ODBC.rb (working copy)
@@ -124,7 +124,8 @@
info['type_name'] = row['TYPE_NAME']
info['sql_type'] = row['DATA_TYPE']
info['nullable'] = row['NULLABLE']
- info['precision'] = row['COLUMN_SIZE'] - (row['DECIMAL_DIGITS'] || 0)
+ cs = row['COLUMN_SIZE']
+ info['precision'] = cs ? (cs - (row['DECIMAL_DIGITS'] || 0)) : nil
info['scale'] = row['DECIMAL_DIGITS']
end




hotac

11/10/2010 3:27:00 PM

0

On Nov 10, 10:17 am, TrinhQuocThien <trinhquocth...@gmail.com> wrote:
> Ngu nhu+ bo`.
>
> Cho^? na`o tao no'i ba` Du+o+ng Nguye^.t A'nh ddeo sao ? ba` A'nh chi?
> la` CIVILIAN. Ne^n job chi? la` "tu+o+ng ddu+o+ng".
>

"Function cu?a KHG Du+o+ng Nguye^.t A'nh la` che^' bom (Bomb Lady).
Ba`
la` deputy chief of Naval Operations, ngoa`i ra co`n kie^m nhie^.m
Science Advisor cho ca? Ngu~ Gia'c Dda`i la^~n Ha?i Qua^n. Ba` la`m
vie^.c du+o+'i 2 o^ng tu+o+'ng 4 sao. "

Ma? kó pi?t "deputy chief of Naval Operations" là gì không? Nó dòi
h?i m?y sao th?ng k?t d?t ? Mu?n tao moi kái d?t (can of worm) k?a mày
ra không ?


> Ma`y ngu chu+a bao gio+` bie^'t US NAVY la` ca'i gi` ca? ma` oang oang
> ngu !
>
> Ma^'y tha(`ng contractor no'i ngu tha^'y me. !
>
> Nancy Pelosi ro+'t ma^'t ro^`i !
>

Ai r?t Speaker of the House mày ???

> ngu ne^n chu+a pha^n bie^.t ddu+o+.c HOUSE vo+'i
> CONGRESS ! ;-))))))))))))))))))))))))))))))))
>
> ngu ne^n chu+a pha^n bie^.t ddu+o+.c LIEUTENANT GOVERNOR vo+'i VICE
> GOVERNOR kha'c nhau cho^? na`o !
>
> QTTT

TrinhQuocThien

11/10/2010 3:43:00 PM

0

Cho ca` nu' te'p riu Hotac ddo.c:

http://servicetoamericamedals.org/SAM/recipients/profiles/nsm07_d...

Ddu+`ng la`m tho'i tie^?u nha^n dda('c chi' ca('c ke' nhe' !

Gia?i thu+o+?ng na`y gia`nh cho nhu+~ng ng` co' co^ng vo+'i Chi'nh
Phu? HK dda^'y nhe' !

QTTT
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> > Ngu nhu+ bo`.
>
> > Cho^? na`o tao no'i ba` Du+o+ng Nguye^.t A'nh ddeo sao ? ba` A'nh chi?
> > la` CIVILIAN. Ne^n job chi? la` "tu+o+ng ddu+o+ng".
>
> "Function cu?a KHG Du+o+ng Nguye^.t A'nh la` che^' bom (Bomb Lady).
> Ba`
> la` deputy chief of Naval Operations, ngoa`i ra co`n kie^m nhie^.m
> Science Advisor cho ca? Ngu~ Gia'c Dda`i la^~n Ha?i Qua^n. Ba` la`m
> vie^.c du+o+'i 2 o^ng tu+o+'ng 4 sao. "
>
> Ma? kó pi?t "deputy chief of Naval Operations" là gì không?  Nó dòi
> h?i m?y sao th?ng k?t d?t ? Mu?n tao moi kái d?t (can of worm) k?a mày
> ra không ?
>
> > Ma`y ngu chu+a bao gio+` bie^'t US NAVY la` ca'i gi` ca? ma` oang oang
> > ngu !
>
> > Ma^'y tha(`ng contractor no'i ngu tha^'y me. !
>
> > Nancy Pelosi ro+'t ma^'t ro^`i !
>
> Ai r?t Speaker of the House mày ???
>
>
>
> > ngu ne^n chu+a pha^n bie^.t ddu+o+.c HOUSE vo+'i
> > CONGRESS ! ;-))))))))))))))))))))))))))))))))
>
> > ngu ne^n chu+a pha^n bie^.t ddu+o+.c LIEUTENANT GOVERNOR vo+'i VICE
> > GOVERNOR kha'c nhau cho^? na`o !
>
> > QTTT- Hide quoted text -
>
> - Show quoted text -

hotac

11/10/2010 4:33:00 PM

0

Here, cái "can of worm" c?a mày dây:
+++++++++++++++++++++++++++++++++++++

Navy My~ cu~ng la.. La`m ca`ng cao thi` star ca`ng i't. Ngu+o+.c la.i
ca`ng tha^'p thi` star ca`ng nhie^`u. ;-)

Duong Nguyet A'nh should be equivalent with 4 star general, not 3 ?

Commander of Naval Surface Warfare Center la` Rear Admiral Archer
Macy, Jr., tu+'c la` chi? co' 2 stars.

Ngay du+o+'i o^ng ta la` Mr. Stephen Mitchell, Technical Director, tu+o
+ng ddu+o+ng vo+'i 3 stars.

Duong Ngo.c A'nh la`m du+o+'i Technical Director. (Kho^ng bie^'t du+o
+'i ma^'y ba^.c, cha('c tru+.c tie^'p). The^' la` DNA'nh should be tu+o
+ng ddu+o+ng vo+'i 4 star general.

HCM
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Ba'c Hochiminh bie^'t ddu'ng la('m. Ne^`'u nhi`n va`o ca'i
organization chart cua? Bo^. Ha?i qua^n:

http://www.tpub.com/content/advancement/14325/css/143...
thi` ddu*'ng dda^`u Ha?i Qua^n My~ la` o^ng Bo^. Tru*o*?ng Ha?i Qua^n
(sec. of the Navy) du*o*'i o^ng ta la` o^ng Pho' "Under-secretary of
the Navy".

O^ng Pho' bo^. tru*o*?ng na`y chi? huy sa'u o^ng kha'c, bo^'n o^ng
phu. ta' bo^. tru*o*?ng (assistant secretary), va` hai o^ng tu*o*'ng
tu* le^.nh, mo^.t o^ng tu* le^.nh TQLC (Commandant of the Marine
Corps) va` o^ng kia la` Xe^'p Ha?i qua^n (Chief Naval Operations).

Theo ca'i chart na`y, ca'c tu*o*'ng tu* le^.nh HQ va` TQLC (bo^'n hay
na(m sao) cu~ng pha?i na(`m du*o*'i o^ng Pho' bo^. tru*o*?ng HQ.

Bo^'n assistant secretary of the Navy go^`m co': mo^.t o^ng Research,
Acquisition & Development, mo^.t o^ng Installation & Env., mo^.t o^ng
Financial & Management, va` mo^.t o^ng Manpower & Reserve.

Ba` DNA co' le~ la`m cho bo^. pha^.n Research hay Development cu?a co*
quan Research, Acq & Development. Bo^. pha^.n na`y co' 3 o^ng
Director, mo^.t o^ng chi? huy research, mo^.t o^ng chi? huy
acquisition, mo^.t o^ng chi? huy devevlopment. Ne^'u ba` DNA la`
project manager thi` pha?i na(`m du*o*'i mo^.t trong hai o^ng
Director Research hay Development na`y. Ne^'u ba` DNA chi? la`
project/team leader thi` du*o*'i quye^`n o^ng project manager. Co`n
ne^'u chi? la` khoa ho.c gia scientist thi` la.i co`n du*o*'i o^ng
project leader. Theo ca'i org chart thi` o^ng Assistant secretary
ngang vo*'i o^ng Chief Naval operations, co*~ 4 sao. O^ng Director
du*o*'i o^ng Assistant Secretary thi` co*~ 3 sao. O^ng/ba` project
Manager co*~ 2 sao, va` o^ng ba` project leader team leader co*~ 1
sao. Ne^'u chi? la` Khoa Ho.c Gia Scientist thi` khoa?ng ca^'p dda.i
ta'.

Tuy nhie^n trong bo^. QP, tui co' bie^'t nha^n vie^n da^n su*.
nha^'t la` scientists co' khi la~nh lu*o*ng cao ho*n ca'c xe^'p
lo*'n, vi` co' khi vi` nhu ca^`u quo^'c pho`ng ho. ddu*o*.c tuye^?n
tu*` ca'c ha~ng nhu* General Dynamics, Dow Chemicals, AT&T Bell Lab
va` IBM, pha?i tra? lu*o*ng cao ho*n ha~ng cu~ ho. la`m. Co' the^?
ngu*o*`i nhu* DNA la~nh luo*ng tu*o*ng ddu*o*ng vo*'i tu*o*'ng 4 sao.

DDa^y la` chi? ddoa'n mo` tu*` tre^n xuo^'ng du*o*'i, tu*` o^ng 4 sao
tu* le^.nh HQ va` phu. ta' bo^. tru*o*?ng xuo^'ng, chi? co' ngu*o*`i
trong pho`ng nha^n vie^n cu?a HQ thi` mo*'i ro~ ca^'p ba^.c tu*o*ng
ddu*o*ng cu?a DNA.

BenLong
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

To^i nghi? la` o^ng TQ Thie^n tra^.t ro^`i Ba` Du+o+ng Nguye^.t A'nh
kho^ng pha?i la` Deputy Chief of Naval Operations, ba` la ngu+o+`i
la`m vie^.c trong ca'i branch cu?a o^ng/ba` Deputy Chief of Naval
Operations, to^i kho^ng o+? USA nhu+ng to^i nghi? no' cu?ng gio^'ng nhu
+ no+i to^i dang o+?, be^n military trong ca'i organization chart,
ngu+o+`i ta la^'y ca'i title cu?a ngu+o+`i ddu+'ng dda^`u la`m tha`nh
te^n cu?a ca'i branch hay directorate do', ex: Assistant to Deputy
Minister for Information Management (ADM- IM) la chu+'c danh nhu+ng cu?
ng la` te^n cu?a ca'i branch ADM-IM, Anh N. Duong, Science Advisor to
the Deputy Chief of Naval Operations for Information, Plans and
Strategy and to the Director of the Naval Criminal Investigative
Service The Pentagon
Cheers
PCO

http://groups.google.com/group/soc.culture.vietnamese/browse_thread/thread/986c7656aa4f05b1/fdf32499aa6fc4b3?lnk=gst&q=Duong+Nguyet+Anh#fdf324...

hotac

11/10/2010 6:35:00 PM

0

KHG Du+o+ng Nguye^.t A'nh mang chu+'c tu+o+ng ddu+o+ng tu+o+'ng 3 sao
Hoa Ky` (hay tu+o+ng du+o+ng chu+'c tu+ le^.nh pho' Ha?i Qua^n Hoa
Ky`-
Deputy Chief).

Function cu?a KHG Du+o+ng Nguye^.t A'nh la` che^' bom (Bomb Lady).
Ba`
la` deputy chief of Naval Operations, ngoa`i ra co`n kie^m nhie^.m
Science Advisor cho ca? Ngu~ Gia'c Dda`i la^~n Ha?i Qua^n. Ba` la`m
vie^.c du+o+'i 2 o^ng tu+o+'ng 4 sao.

Nga`nh Ha?i Qua^n co' 2 pha^`n: qua^n su+. (milatary) va` da^n su+.
(civilian). Ddu+'ng dda^`u ve^` nho'm qua^n su+. thi` la` tu+o+'ng 4
sao (Tu+ Le^.nh Ha?i Qua^n). Ddu+'ng dda^`u da^n su+. la` Bo^. Tru+o
+?
ng Ha?i Qua^n (Secretary of Navy). Chu+'c na`y do To^?ng Tho^'ng
dde^`
cu+? & bo^? nhie^.m (aka. political appointee). Chu+'c na`y ngang
ha`ng tu+o+'ng 4 sao. Hie^.n nay la` Dr. Donald Winter. KHG Du+o+ng
Nguye^.t A'nh thuo^.c ve^` nho'm Civilian cu?a Ha?i Qua^n Hoa Ky`.
Tha`nh pha^`n da^n su+. thi` la`m nhie^`u vie^.c nhu+ nghie^n cu+'u
khoa ho.c, tie^'p tro+., la^.p ke^' hoa.nh ha?i qua^n, truye^`n tin,
cu
+'u thu+o+ng,,,, co`n be^n qua^n su+. thi` chuye^n tra'ch ve^` ta'c
chie^'n.

To^i bie^'t KHG Nguye^.t A'nh ngang ha`ng hay tu+o+ng ddu+o+ng 1 tu+o
+'ng 4 sao Ha?i Qua^n nhu+ng kho^ng co' ddeo sao (ranking).
Co' ng` ca('t co+' ho?i to^i "ta.i sao KHG DNA' tu+o+ng du+o+ng 4 sao
la.i la`m vie^.c du+o+'i 2 o^ng tu+o+'ng 4 sao kha'c?". Ho. tu+o+?ng
4
sao la` cao nha^'t Ha?i Qua^n ne^n kho^ng co`n ai o+? tre^n nu
+~a! ;-))))))))))

Tri.nh Quo^'c Thie^n, Esq
& BBT "LichSuViet.com"