Re: The ODBC engine cannot be found. ERROR MESSAGE

  • Follow


I didn't see the essential: SAS/Access Interface to ODBC

Art
---------
On Tue, 24 Nov 2009 12:26:14 -0800, MS <sordomargarita@GMAIL.COM> wrote:

>On Nov 24, 3:16 pm, MS <sordomargar...@gmail.com> wrote:
>> Hi,
>> I'm trying to connect to a sql server 2000 database from SAS. I'm
>> doing the following:
>> LIBNAME mylibref ODBC
>> NOPROMPT ="UID=;PWD=;DSN=cdmMeDB;SERVER=sql26;DATABASE=cdm_me;" ;
>>
>> PROC PRINT DATA = mylibref.ms_miniTable;
>>  run;
>>
>> I created the DSN cdmMeDB connection using the admin tools from my
>> computer and when I test the connection it works.
>>
>> When I run the above from SAS I get:
>>
>> ERROR: The ODBC engine cannot be found.
>> ERROR: Error in the LIBNAME statement
>>
>> Then I tried:
>> proc setinit; run;
>> and I get:
>>
>> Original site validation data
>> Site name:    'XXX'.
>> Site number:  40214945.
>> Expiration:   15OCT2009.
>> Grace Period:  45 days (ending 29NOV2009).
>> Warning Period: 45 days (ending 13JAN2010).
>> System birthday:   22SEP2009.
>> Operating System:   W32_WKS .
>> Product expiration dates:
>> ---Base
>> Product
>> 15OCT2009
>> ---SAS/
>> STAT
>> 15OCT2009
>> ---SAS/
>> GRAPH
>> 15OCT2009
>> ---SAS/
>> IML
>> 15OCT2009
>> ---SAS/
>> CONNECT
>> 15OCT2009
>> ---SAS/ACCESS Interface to PC
>> Files                                        15OCT2009
>> ---SAS Stat
>> Studio
>> 15OCT2009
>> ---SAS Workspace Server for Local
>> Access                                   15OCT2009
>>
>> I also tried the following to get what products I have installed:
>> DATA   Products(keep = Product);%* ----- ----------------------------
>> *;
>> attrib Product length = $ 16;
>> file   Log;
>> set    SAShelp.vOption(where =(OptName eq 'PATH'));
>> put    'sasroot: ' "%sysget(sasroot)"
>>   /    'sasext0: ' "%sysget(sasext0)";
>> Setting = compbl(translate(tranwrd(Setting,'\sasexe',' ')
>>                           ,' ','!()"'   ,' ','00'x   ,' ','0D'x
>>                           ,' ','0A'x    ,' ','0C'x   ,' ','3A'x
>>                           )%*get rid of special characters;
>>                 );
>> put    'before : ' Setting=;
>> Setting = compbl(translate(tranwrd(Setting,'sasroot\',' ')
>>                           ,' ','()"')   );
>> Setting = compbl(translate(tranwrd(Setting,'sasext0\',' ')
>>                           ,' ','()"')   );
>> put    'after  : ' Setting=;
>>
>> put /  "%sysfunc(getoption(SysIn))"
>>     /  'task: compare with Product list in macro PassInfx'  /;
>>
>> dim = length(Setting) - length(compress(Setting));%*count words;
>> put  '                  ' dim=;
>>
>> do   I = 1 to dim;                Product = scan(Setting,I,' ');
>>      if   Product ne ' ' then do; put '%Let Info' I '=' Product @24
>> ';';
>>                                   output;   end;
>>      else leave;
>>      end;%*do I to dim;           put '     end list .........:';
>> stop; run;%* ........................... ............................
>> *;
>>
>> PROC Print data = &SysLast.;
>> run;
>>
>> And I get:
>> DATA   Products(keep = Product);%* ----- ----------------------------
>> *;
>> attrib Product length = $ 16;
>> file   Log;
>> set    SAShelp.vOption(where =(OptName eq 'PATH'));
>> put    'sasroot: ' "%sysget(sasroot)"
>>   /    'sasext0: ' "%sysget(sasext0)";
>> Setting = compbl(translate(tranwrd(Setting,'\sasexe',' ')
>>                           ,' ','!()"'   ,' ','00'x   ,' ','0D'x
>>                           ,' ','0A'x    ,' ','0C'x   ,' ','3A'x
>>                           )%*get rid of special characters;
>>                 );
>> put    'before : ' Setting=;
>> Setting = compbl(translate(tranwrd(Setting,'sasroot\',' ')
>>                           ,' ','()"')   );
>> Setting = compbl(translate(tranwrd(Setting,'sasext0\',' ')
>>                           ,' ','()"')   );
>> put    'after  : ' Setting=;
>>
>> put /  "%sysfunc(getoption(SysIn))"
>>     /  'task: compare with Product list in macro PassInfx'  /;
>>
>> dim = length(Setting) - length(compress(Setting));%*count words;
>> put  '                  ' dim=;
>>
>> do   I = 1 to dim;                Product = scan(Setting,I,' ');
>>      if   Product ne ' ' then do; put '%Let Info' I '=' Product @24
>> ';';
>>                                   output;   end;
>>      else leave;
>>      end;%*do I to dim;           put '     end list .........:';
>> stop; run;%* ........................... ............................
>> *;
>>
>> PROC Print data = &SysLast.;
>> run;
>>
>> The questions are: Do I have ODBC installed or not? Why the error?
>
>---------------
>
>from the last piece of code I get:
>Obs    Product
>1         core
>2         tablesrvtk
>3         access
>4         connect
>5         graph
>6         iml
>7         stat
>8         spdsclient
0
Reply art297 (4237) 11/24/2009 11:08:01 PM

On Nov 24, 6:08=A0pm, art...@NETSCAPE.NET (Arthur Tabachneck) wrote:
> I didn't see the essential: SAS/Access Interface to ODBC
>
> Art
> ---------
>
> On Tue, 24 Nov 2009 12:26:14 -0800, MS <sordomargar...@GMAIL.COM> wrote:
> >On Nov 24, 3:16 pm, MS <sordomargar...@gmail.com> wrote:
> >> Hi,
> >> I'm trying to connect to a sql server 2000 database from SAS. I'm
> >> doing the following:
> >> LIBNAME mylibref ODBC
> >> NOPROMPT =3D"UID=3D;PWD=3D;DSN=3DcdmMeDB;SERVER=3Dsql26;DATABASE=3Dcdm=
_me;" ;
>
> >> PROC PRINT DATA =3D mylibref.ms_miniTable;
> >> =A0run;
>
> >> I created the DSN cdmMeDB connection using the admin tools from my
> >> computer and when I test the connection it works.
>
> >> When I run the above from SAS I get:
>
> >> ERROR: The ODBC engine cannot be found.
> >> ERROR: Error in the LIBNAME statement
>
> >> Then I tried:
> >> proc setinit; run;
> >> and I get:
>
> >> Original site validation data
> >> Site name: =A0 =A0'XXX'.
> >> Site number: =A040214945.
> >> Expiration: =A0 15OCT2009.
> >> Grace Period: =A045 days (ending 29NOV2009).
> >> Warning Period: 45 days (ending 13JAN2010).
> >> System birthday: =A0 22SEP2009.
> >> Operating System: =A0 W32_WKS .
> >> Product expiration dates:
> >> ---Base
> >> Product
> >> 15OCT2009
> >> ---SAS/
> >> STAT
> >> 15OCT2009
> >> ---SAS/
> >> GRAPH
> >> 15OCT2009
> >> ---SAS/
> >> IML
> >> 15OCT2009
> >> ---SAS/
> >> CONNECT
> >> 15OCT2009
> >> ---SAS/ACCESS Interface to PC
> >> Files =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =
=A0 =A0 =A0 =A015OCT2009
> >> ---SAS Stat
> >> Studio
> >> 15OCT2009
> >> ---SAS Workspace Server for Local
> >> Access =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0=
 =A0 15OCT2009
>
> >> I also tried the following to get what products I have installed:
> >> DATA =A0 Products(keep =3D Product);%* ----- -------------------------=
---
> >> *;
> >> attrib Product length =3D $ 16;
> >> file =A0 Log;
> >> set =A0 =A0SAShelp.vOption(where =3D(OptName eq 'PATH'));
> >> put =A0 =A0'sasroot: ' "%sysget(sasroot)"
> >> =A0 / =A0 =A0'sasext0: ' "%sysget(sasext0)";
> >> Setting =3D compbl(translate(tranwrd(Setting,'\sasexe',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','!()"' =A0 ,'=
 ','00'x =A0 ,' ','0D'x
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','0A'x =A0 =A0=
,' ','0C'x =A0 ,' ','3A'x
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 )%*get rid of spec=
ial characters;
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 );
> >> put =A0 =A0'before : ' Setting=3D;
> >> Setting =3D compbl(translate(tranwrd(Setting,'sasroot\',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','()"') =A0 );
> >> Setting =3D compbl(translate(tranwrd(Setting,'sasext0\',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','()"') =A0 );
> >> put =A0 =A0'after =A0: ' Setting=3D;
>
> >> put / =A0"%sysfunc(getoption(SysIn))"
> >> =A0 =A0 / =A0'task: compare with Product list in macro PassInfx' =A0/;
>
> >> dim =3D length(Setting) - length(compress(Setting));%*count words;
> >> put =A0' =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0' dim=3D;
>
> >> do =A0 I =3D 1 to dim; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0Product =3D scan=
(Setting,I,' ');
> >> =A0 =A0 =A0if =A0 Product ne ' ' then do; put '%Let Info' I '=3D' Prod=
uct @24
> >> ';';
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ou=
tput; =A0 end;
> >> =A0 =A0 =A0else leave;
> >> =A0 =A0 =A0end;%*do I to dim; =A0 =A0 =A0 =A0 =A0 put ' =A0 =A0 end li=
st .........:';
> >> stop; run;%* ........................... ............................
> >> *;
>
> >> PROC Print data =3D &SysLast.;
> >> run;
>
> >> And I get:
> >> DATA =A0 Products(keep =3D Product);%* ----- -------------------------=
---
> >> *;
> >> attrib Product length =3D $ 16;
> >> file =A0 Log;
> >> set =A0 =A0SAShelp.vOption(where =3D(OptName eq 'PATH'));
> >> put =A0 =A0'sasroot: ' "%sysget(sasroot)"
> >> =A0 / =A0 =A0'sasext0: ' "%sysget(sasext0)";
> >> Setting =3D compbl(translate(tranwrd(Setting,'\sasexe',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','!()"' =A0 ,'=
 ','00'x =A0 ,' ','0D'x
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','0A'x =A0 =A0=
,' ','0C'x =A0 ,' ','3A'x
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 )%*get rid of spec=
ial characters;
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 );
> >> put =A0 =A0'before : ' Setting=3D;
> >> Setting =3D compbl(translate(tranwrd(Setting,'sasroot\',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','()"') =A0 );
> >> Setting =3D compbl(translate(tranwrd(Setting,'sasext0\',' ')
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ,' ','()"') =A0 );
> >> put =A0 =A0'after =A0: ' Setting=3D;
>
> >> put / =A0"%sysfunc(getoption(SysIn))"
> >> =A0 =A0 / =A0'task: compare with Product list in macro PassInfx' =A0/;
>
> >> dim =3D length(Setting) - length(compress(Setting));%*count words;
> >> put =A0' =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0' dim=3D;
>
> >> do =A0 I =3D 1 to dim; =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0Product =3D scan=
(Setting,I,' ');
> >> =A0 =A0 =A0if =A0 Product ne ' ' then do; put '%Let Info' I '=3D' Prod=
uct @24
> >> ';';
> >> =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ou=
tput; =A0 end;
> >> =A0 =A0 =A0else leave;
> >> =A0 =A0 =A0end;%*do I to dim; =A0 =A0 =A0 =A0 =A0 put ' =A0 =A0 end li=
st .........:';
> >> stop; run;%* ........................... ............................
> >> *;
>
> >> PROC Print data =3D &SysLast.;
> >> run;
>
> >> The questions are: Do I have ODBC installed or not? Why the error?
>
> >---------------
>
> >from the last piece of code I get:
> >Obs =A0 =A0Product
> >1 =A0 =A0 =A0 =A0 core
> >2 =A0 =A0 =A0 =A0 tablesrvtk
> >3 =A0 =A0 =A0 =A0 access
> >4 =A0 =A0 =A0 =A0 connect
> >5 =A0 =A0 =A0 =A0 graph
> >6 =A0 =A0 =A0 =A0 iml
> >7 =A0 =A0 =A0 =A0 stat
> >8 =A0 =A0 =A0 =A0 spdsclient

do you mean I got the product (first results_) but is not installed,
or I don't have at all?
0
Reply MS 11/25/2009 12:52:25 AM


1 Replies
599 Views

(page loaded in 0.006 seconds)

Similiar Articles:













7/24/2012 10:42:18 PM


Reply: