Eu sou um programador 100% autodidata do MS Access (a parte principal do meu trabalho é programação), agora estou construindo bancos de dados maiores; ainda usando o MS Access como interface do usuário, mas o SQL Server para armazenar todos os dados e fazer mais do 'trabalho'.
Em essência, minha pergunta é; que assuntos preciso saber para o SQL Server que provavelmente não aprendi ou preciso ao usar o Access?
Não estou procurando por você para me dizer como fazer qualquer coisa, mais o que você acha que são as coisas mais importantes que eu deveria fazer uma pesquisa - há muitos assuntos e muitos detalhes, não quero me encontrar por muito tempo caminho por um caminho menos valioso ...
Despejo cerebral:
- Manutenção: o que é mais importante (verifique o banco de dados, reduza o banco de dados, atualize as estatísticas, reconstrua etc.)
- Índices - Eu não sei o quanto deveria, existe um bom livro / blog etc que possa me ensinar o básico para cima?
- Qualquer outra coisa que eu tenha perdido (provavelmente há muitas, como eu disse que sou novo no SQL Server ...)
Se ajudar, eu trabalho para um varejista de médio porte e os bancos de dados em que trabalho predominantemente abrangem coisas como
- Plataforma de relatórios (resume vendas / recebimentos / inventário etc. do sistema principal e fornece relatórios rápidos)
- Uma ferramenta de reconciliação entre uma terceira parte e o que nossas lojas colocam nos registros (importa dados de terceiros e faz referência cruzada aos logs de transações)
- Armazena todos os dados relacionados às nossas promoções; produto, preços, projeções, resultados reais, etc.
fonte
Respostas:
À medida que você aprende mais sobre o SQL Server, você descobrirá (para sua satisfação) várias coisas que você pode fazer no SQL Server no nível do banco de dados que você anteriormente tinha que fazer no Access no nível do aplicativo. Alguns exemplos incluem:
Disparadores: Procedimentos definidos no nível da tabela para que as coisas aconteçam automaticamente sempre que houver um INSERT / UPDATE / DELETE na tabela.
Procedimentos armazenados: Um pouco semelhante às macros do Access e aos pequenos procedimentos do VBA que
Sub
você criou no Access para fazer "coisas úteis", exceto que no SQL Server eles fazem parte do próprio banco de dados. Portanto, você pode escrever um Stored Procedure (SP) uma vez e usá-lo (quase) em qualquer lugar, mesmo em aplicativos que compartilham o mesmo banco de dados.Funções: são um pouco análogas aos pequenos VBAs que
Function
você escreveu no Access para incorporar às consultas, exceto que as Funções do SQL Server, como SPs, estão mais fortemente vinculadas ao banco de dados. As funções do SQL Server também podem ser com valor escalar (retornar um único valor escalar) ou com valor de tabela (retornar um conjunto de linhas).Truques divertidos do SQL: há muitos recursos SQL disponíveis no SQL Server que não são suportados no SQL do Access (Jet / ACE). "Common Table Expressions" (CTEs) e "
RANK
ePARTITION
" são as que me deram "'aha' momentos" quando eu estava começando.Eu poderia continuar, mas essas são as coisas que lembro de descobrir desde cedo que me fizeram "pensar no SQL Server".
Não me interpretem mal, eu ainda acho que o Access é uma excelente ferramenta quando usada adequadamente e deve ser levada em consideração seriamente como forma de
criar (ou apenas simular) aplicativos front-end em um back-end do SQL Server e
limpe os dados, crie consultas e relatórios ad-hoc e execute tarefas semelhantes nos dados do SQL Server.
Por fim, mesmo que você esteja trabalhando com o SQL Server 2005, recomendo que você obtenha uma cópia do SQL Server 2008 (ou 2012) Express para aprender , principalmente devido aos aprimoramentos de IDE no SQL Server Management Studio (a conclusão automática e depuração interativa). Esteja ciente de quaisquer recursos mais recentes (2008+) que você possa encontrar e não confie neles para o seu código de produção. (Ou use-os como pontos de referência para sua apresentação para atualizar do SQL Server 2005 ....)
fonte
Há muito o que aprender ... online ou através de livros. Aqui estão alguns primeiros links para você começar (lista muito incompleta, mas deve mantê-lo ocupado por um tempo):
Fóruns
Blogs
Livros
fonte
Tendo usado o SQL Server há alguns anos (e antes desse Access), sugiro o seguinte.
Comecei a trabalhar com o SQL Server Reporting recentemente, mas pode ser um pouco complicado de configurar - na maioria dos casos de negócios, obter o Excel para recuperar dados de um Procedimento Armazenado do SQL Server geralmente é mais flexível para os gerentes.
Espero que isso ajude, seja bem-vindo a bordo :)
fonte
Para qualquer pessoa que comece com o SQL Server, recomendo começar aprendendo os blocos de construção básicos primeiro, antes de entrar no assunto do tipo DBA.
Depois de ter resolvido isso e poder trabalhar no SQL Server sem precisar usar o MS Access, principalmente usando os tipos T-SQL, você poderá aprender mais sobre as tarefas básicas do tipo DBA, como:
Restauração de backup
Manutenção
Administração
Os sites MSDN e Aprendizado da Microsoft terão lições e tutoriais muito úteis para você. Entendo que nem sempre é claro por onde começar, mas se você seguir aproximadamente as listas acima, deverá fazer o SQL rapidamente.
Nota : Embora a maioria dos cursos de Certificação Microsoft do SQL 2005 tenha sido descontinuada, você ainda pode usar os recursos disponíveis para o SQL 2008 R2. Eu posso ter uma chance de dizer isso, mas o SQL 2008 R2 é semelhante ao SQL 2005 (no contexto do que você deseja aprender), para que você possa estudar o 2008 R2 e ainda assim ficar bem.
Por fim: Bem-vindo ao dba.stackexchange.com e SQL Server
fonte
Atualmente, estou exatamente na mesma situação que você, meu amigo, e posso entender completamente. Por isso, recomendarei o livro que resolveu muitas das perguntas que tive com relação à migração para o servidor SQL.
Livro: Guia do desenvolvedor do Microsoft Access para SQL Server de Mary Chipman e Any Baron
O livro explica tudo o que você precisa saber, desde os benefícios de segurança às permissões do usuário, etc., e o melhor de tudo, é explicado de uma maneira muito legível e direta.
Provavelmente existe uma versão mais atualizada deste livro, mas essa é a atual que eu uso e ela preenche todas as minhas necessidades!
Espero que ajude você tanto quanto me ajudou.
Boa sorte!
fonte
Para responder às suas perguntas -
Manutenção: o que é mais importante (verifique o banco de dados, reduza o banco de dados, atualize as estatísticas, reconstrua etc.)
Uma das melhores soluções para manutenção é o backup do SQL Server, a verificação de integridade e a manutenção de índices e estatísticas. Basta ler e implantar. Testado e amplamente utilizado pela comunidade SQLServer.
Índices - Eu não sei o quanto deveria, existe um bom livro / blog etc que possa me ensinar o básico para cima?
Escada para índices do SQL Server - Excelentes séries do nível básico ao avançado.
Qualquer outra coisa que eu tenha perdido (provavelmente há muitas, como eu disse que sou novo no SQL Server ...)
Há muito mais do que apenas manutenção e indexação no SQL Server. Minha sugestão seria ler sobre qualquer conteúdo postado nos sites abaixo ... (Eles são os melhores !!)
SQLSkills.com
brentozar.com
SQLServerCentral.com
Ao trabalhar com o SQLServer regularmente, você sentirá a necessidade de obter mais conhecimento em diferentes áreas, como recuperação de desastres, ajuste de desempenho, alta disponibilidade, corrupção de banco de dados etc.
Nota: Há uma infinidade de informações disponíveis na web com excelentes conselhos ruins também. Portanto, meu conselho seria educar-se com as pessoas que trabalharam e estão trabalhando com o SQLServer no dia a dia.
Por fim, verifique este treinamento da SQLSkills - uma das melhores oferecidas. Pessoalmente, tomei o IE1 e o IE2 e confie em mim. Você sentirá a diferença!
fonte
Uma coisa muito interessante que você pode estudar no SQL Server é o Plano de Execução de Consultas e a Dica de Consulta do SQL que você pode usar quando o plano de execução de consultas não for o que você está esperando.
O Plano de Execução de Consulta, é um tópico avançado, mas pode ajudar a entender o desempenho do SQL Server.
Naturalmente, você não deve usar indevidamente a dica de consulta , na minha experiência, eles são o último recurso quando uma consulta não está funcionando com o desempenho esperado.
fonte