Visual Basic, VB .NET, ASP, Active X, Access, SQL Server

Use VbCRLF para quebrar longas strings de SQL

Por que sugerir que se inclua a constante VbCrLf nas quebras de longas strings contendo consultas SQL? Afinal de contas, estas constantes nada significam dentro das strings de SQL. A resposta é: depuração simplificada. Constantemente você precisa criar longas consultas SQL que ocupam várias linhas de programa. Por exemplo,

     sSQL = "SELECT * FROM Usuarios" _
            & " WHERE userid = " & lUser _
            & " AND nome = '" & sNome & "'"

Se você cria a consulta SQL desta forma, ela é legível no código do programa, mas não quando você tem de vê-la na janela Immediate em tempo de execução.

Na janela Immediate, você entra com

? sSQL

e uma longa e inteira string é exibida, alcançando quilômetros de distância.

Contudo, se você simplesmente terminar cada linha com VbCRLF, como aqui:

     sSQL = "SELECT * FROM Usuarios" & vbCrLf _
            & "WHERE userid = " & lUser & vbCrLf _
            & "AND nome = '" & sNome "'"

então você terá uma visão completa e fácil de ler da sua consulta SQL.

Um outro benefício do exemplo acima é que você não precisa se preocupar em adicionar um espaço no começo (ou fim) de cada linha para evitar que isto:

     sSQL = "SELECT * FROM Usuarios" & _
            & "WHERE userid = " & lUser

vire isto:

"SELECT * FROM UsuariosWHERE userid = 1"

e o seu código gere um erro de sintaxe SQL.