2010-09-13 9 views
5

Ho un database SQL Server 2008 con un front-end di Access. Il mio problema è che Access non riconosce le date di SQL Server in quanto sono in un formato diverso. formatoIl front-end MS-Access non riconosce le date da SQL Server

SQL Server-s è formato YYYY-MM-DD
Access' è DD-MM-YYYY

Quando viene visualizzata la data in un casella di testo, viene visualizzato come una stringa (senza la piccola icona del calendario accanto ad essa).
È possibile configurare il front-end di Access in modo che riconosca le date di SQL Server?

Cheers.

+0

è questa tabella collegata? –

+3

Mi sembra che i valori in SQL Server siano memorizzati in un formato stringa. Puoi verificare che siano memorizzati nella colonna della data effettiva? –

+0

Sì, sono memorizzati come data, e sì, è una tabella collegata :) –

risposta

4

Se si memorizzano le date nel server SQL come tipo di dati "Data" o "Data2" provare a cambiarle in "DateTime" ho riscontrato questo problema nel collegare i dati dal server SQL 2008R2 all'accesso 97, l'accesso non l'ho visto come data e trattato come testo

+0

Sei un gentiluomo e uno studioso. –

+2

Un'altra cosa che non è coinvolta qui è se si esegue l'upsize dei dati di accesso a SQL Server utilizzando Assistente migrazione SQL Server, qualsiasi colonna data con valori non validi in SQL Server verrà creata in SQL Server come testo (!!!). SSMA consente di eseguire un report prima dell'upsizing, quindi contrassegna le tabelle con date non valide (anche se non ti dirà quali campi). Sto solo lanciando questo per completezza perché l'ho incontrato solo negli ultimi 10 giorni. –

+2

Questo non ha funzionato per me in Access 2010 ... Ho dovuto inserire la data in modo esplicito utilizzando CDate ([Data]) nella vista SQL – wwv

3

L'Assistente migrazione di Microsoft SQL Server per l'accesso sposta le date su un formato data. Il problema che l'utente ha riscontrato è un driver. Microsoft ha una nuova DLL che deve essere messa su una workstation client (o un server nel caso di Citrix). Una volta fatto, tutte le date in MS Access funzioneranno correttamente. La mia ultima esperienza con Access 2010 era esattamente la stessa di Access 2003. Richiedeva una DLL. Da lì, esaminare utilizzando una stringa di connessione DNS-Less.

+4

Hai il link dove posso scaricare questa DLL? – BlueMagma

1

Mi sono appena imbattuto in questo, grazie a tutti per il vostro contributo.

Sto anche sviluppando un'interfaccia utente di accesso per un back-end di SQL Server (Access 2010/SQL Server 2014) e ho appena riscontrato questo problema. Il datatype Date richiede 3 byte di spazio e, poiché non avevo bisogno di un componente orario, era quello che volevo. Personalmente sto usando SmallDateTime, ci vogliono 4 byte rispetto a DateTime's 8. C'è anche DateTime2 che richiede 6-8 byte.

Ho creato una tabella di quattro campi utilizzando ciascuno dei tipi di dati di data per sperimentare con i formati di input, penso che SmallDateTime farà il trucco per me.

Problemi correlati