Go to The University of Queensland Homepage
Welcome to the Faculty of Arts Homepage You are at the Faculty of Arts site

SPSS does not import data properly under Windows Vista.

When importing data from Microsoft Access (2003/2000) via ODBC under Windows Vista, SPSS will randomly duplicate and drop entire records without reporting an error. This occurs when doing a number of imports in a row and only seems to happen when using Windows Vista.

Fails: SPSS 15,17 under windows Vista (two seperate computers tested, v17 tested twice)
Works: SPSS 15, 16, 17 under windows XP

People should be made aware of the issue as you will NOT see any problems unless you happen to examine fields that should be unique.

SPSS ODBC import code (an identical snip below repeated over 16 times, once for each table I imported):

Get data /type=ODBC
/connect='DRIVER=Microsoft Access Driver (*.mdb);'+
'Threads=3;SafeTransactions=0;PageTimeout=5;MaxScanRows=8;'+
'MaxBufferSize=2048;FIL=MS Access;DriverId=25;DefaultDir=C:\database\;'+
'DBQ=C:\database\myData.mdb;'
/SQL ='SELECT * FROM myAccessTableName'.
Execute.
INCLUDE FILE='C:\tmp\db\Labels_myTableName.sps'.
sort cases by myIDfield.
Execute.
save outfile='C:\tmp\db\myTableName.sav' /compressed.
Execute.

NOTE:
#1: I have used various connect strings, including the one given in the SPSS comand syntax reference.
#2: Equivalent SAS scripts that import using ODBC under Vista do not show the error; not an ODBC problem.

LIBNAME mylib ODBC NOPROMPT="DRIVER=Microsoft Access Driver (*.mdb);Threads=3;SafeTransactions=0;PageTimeout=5;MaxScanRows=8; MaxBufferSize=2048;FIL=MS Access;DriverId=25;DefaultDir=M:\database\;DBQ=M:\database\data.mdb;";
DATA myTable; SET mylib.myAccTable; RUN;
PROC SORT DATA=myTable; BY myIDfield; RUN;