Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NaPraia

Boas práticas de programção

Recommended Posts

Novemer's Tip of the Month

 

Best Practices to Improve SQL Performance

By P. V. Neir, Reprinted from Articles.Freemegazone

BOOKMARK: http://www.quest-pipelines.com/tiptrack.asp?id=20711

 

Being developers we often see clients complaining about database performance. Performance problems arise when we ignore good practices. In this article I briefly list some of the best practices one should follow while working with SQL.

 

1. The database design should be simple and clear. It should be user friendly. It should have flexible structure so that depending on the future requirements the database can easily be expanded.

 

2. Store relevant and necessary information in the database.

 

3. Use normalized tables in the database. It is better to use small multiple tables instead of using one large table.

 

4. Use denormalization as the last option for your database.

 

5. Use database look up tables. It will help you maintain data integrity of your database.

 

6. Use numeric or small width primary key for your database tables. Processing small data takes less time.

 

7. Do not store images in the database. Store URLs of images instead.

 

8. Do not display SQL errors to users. Most of the attackers get benefit of error messages.

 

9. Make an ERROR table in the database. Storing errors in the ERROR table will help you keep track of bugs.

 

10. Assign proper data types to the fields in the database. It is better to use TINYINT for age rather than VARCHAR (45).

 

11. Use database field names in SELECT, INSERT, UPDATE commands. Avoid using SELECT * or INSERT INTO TABLE VALUES (value1, value2...).

 

12. Use LIKE clause properly. Improper usage may cause performance problems in your database.

 

13. Use database server's timestamp instead of web server's timestamp.

 

14. Use alias in the SQL statements which require multiple tables.

 

15. Write SQL commands in capital letters. It helps in readability.

 

16. Use nested queries as minimum as possible. Use JOIN statement instead.

 

17. Avoid query running in the loop.

 

18. Use stored procedures. They are fast and help in maintainability and security of the database.

 

19. Avoid CURSOR, GOTO and IF statements. Prefer SWITCH CASES.

 

20. Use comments.

 

21. Do proper indexing. It will improve the speed of operations in the database tables. Improper or too much indexing affects performance of the database.

 

22. Use inet_aton() function to store IPs as integers in the database. The inet_aton() function converts the string, in the Internet standard dot notation, to a network address, and stores the address in the structure provided.

 

23. Retrieve the IPs with inet_ntoa() function. The inet_ntoa() function converts the specified Internet host address to a string in the Internet standard dot notation.

 

24. Always encrypt the sensitive data.

 

25. Do not rely on server configurations. Always write the most portable code possible.

 

26. Do proper documentation of your application.

 

27. Always do testing of your database application. Make cases based on requirements and maintain a checklist of the tests.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu li, se não, não tinha postado aqui.

fiquei com preguiça de colocar o texto no google translate para colar aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

TECLA SAP

 

A Ponta do mês de Novembro

 

As Melhores Práticas para Melhorar Realização SQL

Por P. V. Neir, Reimprimido de Artigos. Freemegazone

MARCADOR DE PÁGINAS:http://www.quest-pipelines.com/tiptrack.asp?id=20711

 

Sendo reveladores muitas vezes vemos clientes queixar-se da realização de banco de dados. Os problemas de realização surgem quando não ignoramos boas práticas. Neste artigo resumidamente enumero algumas práticas melhores que há que seguir trabalhando com SQL.

 

1. O desenho de banco de dados deve ser simples e claro. Deve ser usuário amistoso. Ele deve ter estrutura flexível para que dependendo das futuras exigências o banco de dados possa ser facilmente extenso.

 

2. Fornecer a informação relevante e necessária no banco de dados.

 

3. Usar tabelas normalizadas no banco de dados. É melhor usar pequenas múltiplas tabelas em vez de usar uma grande tabela.

 

4. Usar denormalization como a última opção do seu banco de dados.

 

5. O banco de dados de uso procura tabelas. Ele o ajudará a manter a integridade de dados do seu banco de dados.

 

6. Usar a largura numérica ou pequena chave primária para as suas tabelas de banco de dados. O processamento de pequenos dados toma menos tempo.

 

7. Não fornecer imagens no banco de dados. Forneça URLs de imagens em vez disso.

 

8. Não expor erros SQL a usuários. A maior parte dos atacantes adquirem-se do benefício de mensagens incorretas.

 

9. Fazer uma tabela INCORRETA no banco de dados. Armazenamento de erros na tabela INCORRETA o ajudará a guardar a pista de bugs.

 

10. Destinar tipos de dados próprios aos campos no banco de dados. É melhor usar TINYINT para a idade e não VARCHAR (45).

 

11. Usar nomes de campo de banco de dados em SELECIONAM, INSEREM, ATUALIZAM ordens. Evite usar SELECIONAM * ou INSERÇÃO EM VALORES DE TABELA (value1, value2 ...).

 

12. Usar a cláusula de LIKE propriamente. O uso impróprio pode causar problemas de realização no seu banco de dados.

 

13. Usar timestamp de servidor de banco de dados em vez de timestamp de servidor de web.

 

14. Usar o pseudônimo nas afirmações SQL que necessitam múltiplas tabelas.

 

15. Escrever ordens de SQL em cartas de capital. Ele ajuda na legibilidade.

 

16. Usar perguntas aninhadas tão mínimas enquanto possível. Use a afirmação de JUNÇÃO em vez disso.

 

17. Evitar a pergunta que corre no laço.

 

18. Usar procedimentos fornecidos. Eles são rápidos e ajuda em manutenibilidade e segurança do banco de dados.

 

19. Evitar o CURSOR, GOTO e IF afirmações. Prefira SWITCH CASES.

 

20. Usar comentários.

 

21. Fazer a indexação própria. Ele melhorará a velocidade de operações nas mesas de banco de dados. Impróprio ou demasiada indexação afeta a realização do banco de dados.

 

22. Usar inet_aton () função para fornecer IPs como números inteiros no banco de dados. O inet_aton () a função converte a cadeia, no padrão de Internet notação de ponto, a um endereço de rede, e fornece o endereço na estrutura fornecida.

 

23. Recuperar o IPs com inet_ntoa () função. O inet_ntoa () função converte o endereço de anfitrião de Internet especificado em uma cadeia no padrão de Internet notação de ponto.

 

24. Sempre encripte os dados sensíveis.

 

25. Não confiar em configurações de servidor. Sempre escreva o código mais portátil possível.

 

26. Fazer a documentação própria da sua aplicação.

 

27. Sempre faça a prova da sua aplicação de banco de dados. Faça casos baseados em exigências e mantenha uma lista de conferência dos testes.

 

 

 

bom foi o melhor que eu consegui...

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. The database design should be simple and clear. It should be user friendly. It should have flexible structure so that depending on the future requirements the database can easily be expanded.

Parece que muitos não querem entender isso.

A modelagem de um banco de dados é essencial num sistema. A estrutura correta facilita implementações futuras.

Quem bom que essa á obervação inicial! :D

 

 

8. Do not display SQL errors to users. Most of the attackers get benefit of error messages.

Essa é muito importante.

Muitos fazem o debug do script e esquecem de desabilitar as mensagens de erro após finalizar o desenvolvimento.

Muitos erros mostram informações internas do sistema, como estrutura de arquivos e tabelas. Isso facilita ataques. http://forum.imasters.com.br/public/style_emoticons/default/excl.gif http://forum.imasters.com.br/public/style_emoticons/default/excl.gif

 

 

15. Write SQL commands in capital letters. It helps in readability.

Essa é frescura. :P

 

 

16. Use nested queries as minimum as possible. Use JOIN statement instead.

Esses dias, ajudei um membro a substituir 12 SELECT's por somente um.

Ele fazia um Select para cada mês. O bm é que a implementação foi simples, pois ele usava campos dos tipos corretos. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

ajudei um membro a substituir 12 SELECT's por somente um.

Ele fazia um Select para cada mês.

isso é o fim da picada

 

Alguém podia me ajudar a traduzir melhor o nº nove?

9. Make an ERROR table in the database. Storing errors in the ERROR table will help you keep track of bugs.

Grave o ERRO (código e mensagem) numa tabela do Banco. Armazenando os ERROS numa tabela, ajudará a lhe esclarecer qual é o problema quando aparecer um erro.

 

assim fica um pouco mais fácil de entender

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.