2008-09-02 13 views
5

Tenemos una base de datos de servidor SQL. Para manipular los datos de forma no programática, puedo usar SQL Server Management Studio haciendo clic con el botón derecho en una tabla y seleccionando "Abrir tabla". Sin embargo, esto es lento para tablas muy grandes y la clasificación y el filtrado son engorrosos.¿Cuál es la mejor manera de trabajar con datos de SQL Server de forma no programática?

Normalmente, lo que hemos hecho hasta ahora es crear una base de datos de Access que contenga tablas vinculadas que apunten a las tablas y vistas de SQL Server. La apertura de una tabla grande es mucho más rápida de esta manera, y Access tiene un filtro y clasificación de clic derecho fáciles de usar.

Sin embargo, desde Access 2007, la ordenación en particular ha sido bastante lenta cuando se trabaja con tablas grandes. La base de datos de Access también puede bloquear inadvertidamente las tablas de la base de datos, bloqueando otros procesos que pueden necesitar acceder a los datos. La creación de la base de datos de Access en primer lugar, y su actualización cuando se agregan nuevas tablas a SQL Server, también es tediosa.

¿Hay una mejor manera de trabajar con los datos que ofrecen la usabilidad de Access sin sus inconvenientes?

+0

Hay una revisión acaba de ser lanzado para el acceso 2007 que podrían abordar el problema de rendimiento que ha tenido. Consulte http://support.microsoft.com/kb/956054 para obtener detalles.Pero solo puede abordar el problema en formularios, no en la vista de hoja de datos. –

Respuesta

2

respuesta de Joel Coehoorn Por supuesto, es correcta, que si los datos son críticos o hay usuarios ingenuos utilizando los datos, a continuación, una interfaz de aplicación debe ser desarrollado. Dicho esto, tengo casos en los que un usuario inteligente (bueno, yo) el usuario necesita simplemente entrar y husmear.

En lugar de mirar directamente a las tablas, usar MS Access pero el uso de consultas para reducir lo que usted está buscando en tanto la columna y la fila sabia sabia. Eso mejorará la velocidad. Luego edite las propiedades de la consulta y asegúrese de que la consulta no tenga bloqueos. Eso debería eliminar cualquier comportamiento de bloqueo. Es posible que desee limitar el número de filas devueltas, lo que de nuevo mejorará la velocidad. Aún puede editar los datos en la consulta a medida que la mira.

Dependiendo de lo que está viendo, sino que también puede ser útil para establecer Vistas de base de datos en el servidor SQL Server para hacer parte del trabajo pesado en el servidor en lugar de en el cliente.

0

No sé qué tan bien va a funcionar con tablas realmente grandes, pero Visual Studio es mucho más rápido que SQL Management Studio para operaciones de tabla básicas. Abra su base de datos en Server Explorer, haga clic derecho en una tabla y seleccione "Abrir" para simplemente mostrar los datos o "Nueva consulta" para filtrar, ordenar, etc.

+0

Visual Studio tardó varios minutos en abrir una tabla con 600,000 filas, que en realidad es un poco más lenta que SSMS. Y el filtrado es engorroso en comparación con Access. Gracias de todos modos por la sugerencia. –

0

Editar datos sin procesar es un peligroso no- no. Es mejor identificar las situaciones en las que te encuentras haciendo eso y armar una interfaz de aplicación para actuar como un intermediario que puede evitar que hagas cosas estúpidas como romper una clave foránea.

+0

"El DBMS siempre debe hacer cumplir las restricciones que puede imponer, en lugar de confiar en que las aplicaciones se abstengan de escribir datos que violen las restricciones". ¿Cómo se rompe una clave foránea? – onedaywhen

0

No sé cuál sería el rendimiento para grandes conjuntos de datos, pero open office tiene un programa de base de datos (Base), que es un clon de Access y puede ser justo lo que está buscando.

1

He utilizado Visual Studio para hacer muchas cosas, solo por comodidad en lugar de tener que iniciar sesión en el servidor y trabajar directamente en el administrador de la base de datos.

Sin embargo, ¿ha probado Toad para MS SQL (de Quest Software)? Lo uso todo el tiempo para Oracle, y he tenido buenos resultados (a menudo mejores que las herramientas de Oracle).

0

Es posible que desee leer Tony Toews's Access Performance FAQ, que proporciona una serie de sugerencias sobre cómo mejorar el rendimiento en una aplicación de Access. Tal vez uno de esos consejos resolverá el problema en su aplicación A2K7.

Cuestiones relacionadas