Soy un programador 100% autodidacta de MS Access (la parte principal de mi trabajo es la programación), ahora estoy construyendo bases de datos más grandes; sigo usando MS Access como la interfaz de usuario, pero SQL Server para almacenar todos los datos y hacer más del "trabajo".
En esencia mi pregunta es; ¿Qué temas necesito saber para SQL Server que probablemente no aprendí o no necesité al usar Access?
No busco que me digas cómo hacer nada, más lo que crees que son las cosas más importantes que debería investigar: hay muchos temas y muchos detalles, no quiero encontrarme mucho tiempo camino por un camino menos valioso ...
Volcado cerebral:
- Mantenimiento: cuáles son los más importantes (verificar la base de datos, reducir la base de datos, actualizar las estadísticas, reconstruir, etc.)
- Índices - No sé tanto como debería, ¿hay algún buen libro / blog, etc. que pueda enseñarme lo básico?
- Cualquier otra cosa que me haya perdido (probablemente haya muchas, ya que dije que soy nuevo en SQL Server ...)
Si me ayuda, trabajo para un minorista de tamaño medio y las bases de datos en las que trabajo principalmente para cubrir cosas como
- Plataforma de informes (resume ventas / recibos / inventario, etc. del sistema principal y proporciona informes rápidos)
- Una herramienta de conciliación entre una tercera parte y lo que nuestras tiendas ponen a través de registros (importa datos de terceros y hace referencias cruzadas a los registros de transacciones)
- Almacena todos los datos relacionados con nuestras promociones; producto, precios, proyecciones, resultados reales, etc.
fuente
Respuestas:
A medida que aprenda más sobre SQL Server, descubrirá (para su deleite) varias cosas que puede hacer en SQL Server a nivel de base de datos que anteriormente tenía que hacer en Access a nivel de aplicación. Algunos ejemplos incluyen:
Desencadenantes: procedimientos definidos a nivel de tabla para hacer que las cosas sucedan automáticamente cada vez que hay un INSERT / UPDATE / DELETE en la tabla.
Procedimientos almacenados: algo similar a las macros de Access y esos pequeños procedimientos de VBA
Sub
que creó en Access para hacer "cosas útiles", excepto que en SQL Server son parte de la base de datos. Por lo tanto, puede escribir un Procedimiento almacenado (SP) una vez y usarlo (casi) en cualquier lugar, incluso en aplicaciones que comparten la misma base de datos.Funciones: son algo análogas a los pequeños VBA
Function
que escribió en Access para incorporar a las consultas, excepto que las funciones de SQL Server, como los SP, están más estrechamente vinculadas a la base de datos. Además, las funciones de SQL Server pueden ser de valor escalar (devolver un solo valor escalar) o de tabla (devolver un conjunto de filas).Trucos divertidos de SQL: hay muchas funciones de SQL disponibles en SQL Server que no son compatibles con Access (Jet / ACE) SQL. Las "expresiones de tabla comunes" (CTE) y "
RANK
yPARTITION
" son las que me dieron "momentos" ajá "cuando comenzaba.Podría continuar, pero estas son las cosas que recuerdo haber descubierto al principio que me hicieron "pensar en SQL Server".
No me malinterpreten, sigo pensando que Access es una herramienta excelente cuando se usa de manera adecuada, y se debe considerar seriamente como una forma de
construir (o simplemente simular) aplicaciones front-end contra un servidor SQL Server, y
realice la limpieza de datos, cree consultas e informes ad-hoc y realice tareas similares en sus datos de SQL Server.
Finalmente, a pesar de que trabajará con SQL Server 2005, le recomiendo que obtenga una copia de SQL Server 2008 (o 2012) Express para aprender , principalmente debido a las mejoras de IDE en SQL Server Management Studio (es decir, autocompletar y depuración interactiva). Solo tenga en cuenta las características más recientes (2008+) que pueda encontrar y no confíe en ellas para su código de producción. (O úselos como viñetas para que su lanzamiento se actualice desde SQL Server 2005 ...)
fuente
Hay mucho que aprender ... ya sea en línea o a través de libros. Aquí hay algunos primeros enlaces para comenzar (lista muy incompleta, pero debería mantenerte ocupado por un tiempo):
El
Blogs
Libros
fuente
Después de haber usado el servidor SQL durante algunos años (y antes de ese acceso), sugeriría lo siguiente.
Recientemente comencé a trabajar con SQL Server Reporting, pero puede ser una tarea difícil de configurar: en la mayoría de los casos de negocios, hacer que Excel recupere datos de un Procedimiento almacenado de SQL Server a menudo es más flexible para los gerentes.
Espero que esto ayude, bienvenido a bordo :)
fuente
Para cualquiera que comience con SQL Server, recomendaría comenzar primero con el aprendizaje de los bloques de construcción básicos, antes de entrar en las cosas de tipo DBA.
Una vez que tenga un control sobre estos, y pueda trabajar en SQL Server sin tener que usar MS Access, utilizando principalmente tipos T-SQL, entonces podría continuar aprendiendo más sobre las tareas básicas de tipo DBA, como:
Copia de seguridad de restauracion
Mantenimiento
Administración
Los sitios de aprendizaje y MSDN de Microsoft tendrán lecciones y tutoriales muy útiles para usted. Entiendo que no siempre está claro por dónde comenzar, pero si sigue más o menos las listas anteriores, debería ejecutar SQL en poco tiempo.
Nota : Si bien la mayoría de los cursos de certificación de Microsoft SQL 2005 probablemente se hayan descontinuado, aún puede usar los recursos disponibles para SQL 2008 R2. Podría recibir un disparo por decir esto, pero SQL 2008 R2 es lo suficientemente similar a SQL 2005 (en el contexto de lo que desea aprender) para que pueda estudiar 2008 R2 y aún así estar bien.
Por último: Bienvenido a dba.stackexchange.com y SQL Server
fuente
Actualmente estoy exactamente en la misma situación que tú, mi amigo, y puedo entenderlo completamente. Por lo tanto, recomendaré el libro que ha resuelto muchas de las preguntas que tenía con respecto a pasar al servidor SQL.
Libro: Guía del desarrollador de Microsoft Access para SQL Server por Mary Chipman y Any Baron
El libro explica todo lo que necesita saber, desde los beneficios de seguridad hasta los permisos de usuario, etc. y, lo mejor de todo, se explica de una manera muy legible y directa.
Probablemente haya una versión más actualizada de este libro, pero esta es la actual que uso y llena todas mis necesidades.
Espero que te ayude tanto como a mí.
¡Buena suerte!
fuente
Para responder tu pregunta --
Mantenimiento: cuáles son los más importantes (verificar la base de datos, reducir la base de datos, actualizar las estadísticas, reconstruir, etc.)
Una de las mejores soluciones para el mantenimiento es la copia de seguridad, la comprobación de integridad y el mantenimiento de índices y estadísticas de SQL Server. Simplemente léalo e implemente. Probado y utilizado ampliamente por la comunidad SQLServer.
Índices - No sé tanto como debería, ¿hay algún buen libro / blog, etc. que pueda enseñarme lo básico?
Escalera a los índices de SQL Server : series excelentes desde el nivel básico hasta el avanzado.
Cualquier otra cosa que me haya perdido (probablemente haya muchas, ya que dije que soy nuevo en SQL Server ...)
Hay mucho más que solo mantenimiento e indexación en SQL Server. Mi sugerencia sería leer sobre cualquier contenido publicado por los siguientes sitios ... (¡Son los mejores!)
SQLSkills.com
brentozar.com
SQLServerCentral.com
Al trabajar con SQLServer de manera regular, sentirá la necesidad de obtener más conocimiento en diferentes áreas como recuperación ante desastres, ajuste de rendimiento, alta disponibilidad, corrupción de la base de datos, etc.
Nota: Hay una gran cantidad de información en la web con excelentes malos consejos también. Por lo tanto, mi consejo sería recibir educación de las personas que han trabajado y están trabajando con SQLServer en el día a día.
Por último, consulte esta capacitación de SQLSkills , una de las mejores que se ofrecen. Yo personalmente he tomado IE1 e IE2 y confía en mí. ¡Sentirás la diferencia!
fuente
Una cosa muy interesante que puede estudiar en SQL Server es el Plan de ejecución de consultas y la Sugerencia de consultas SQL que puede usar cuando el plan de ejecución de consultas no es lo que esperaba.
El Plan de ejecución de consultas es un tema avanzado, pero puede ayudarlo a comprender el rendimiento de SQL Server.
Naturalmente, no debe hacer un mal uso de la sugerencia de consulta , en mi experiencia, son el último recurso cuando una consulta no funciona con el rendimiento esperado.
fuente