CONVERT função obtém data do campo de DateTime do SQL Server com uma consulta do Visual FoxPro

Traduções deste artigo Traduções deste artigo
ID do artigo: 308133 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sumário

Datas são armazenadas em uma tabela do SQL Server são armazenadas como um tipo de dados DateTime. Você pode usar a função do SQL Server CONVERT() para extrair a parte de um campo de DateTime SQL com uma consulta do Visual FoxPro; data por exemplo:
SELECT CONVERT(CHAR(10), <field name>, 101) FROM <table name>
				
você ainda pode fornecer apenas a data quando especificar um filtro condição na consulta. O tempo não é necessário na expressão. Por exemplo:
SELECT CONVERT(CHAR(10), <field name>, 101) FROM <table name> ;
               WHERE <field name> = '01-01-1999'
				
o primeiro e terceiro parâmetros na chamada de função acima (CHAR(10) e 101) devem específico extraindo a data de DateTime. O tópico MANUAIS online para a função CONVERT descreve outras opções disponíveis.

Mais Informações

O seguinte código de exemplo do Visual FoxPro se conecta ao SQL Server e recupera dados. O código usa a função SQL CONVERT() para extrair a parte de data do campo DateTime "ORD_DATE". Observe que o tipo de dados retornado pelo comando CONVERT é CHARACTER no Visual FoxPro.

Para usar esse exemplo, execute essas etapas:
  1. Cole o seguinte código em um novo programa dentro do Visual FoxPro:
    *!* Enter your specific SQL Server information here.
    #DEFINE    SQL_NAME    " "
    #DEFINE    SQL_UID     " "
    #DEFINE    SQL_PWD     " "
    *~~~~~~~~~~~
    
    LOCAL lcSQLConnStr, ;
        lnSQLConnHandle, ;
        lnSQLExecSuccess
    
    lcSQLConnStr = "DRIVER={SQL Server};SERVER=" + SQL_NAME + ;
    	";DATABASE=PUBS;UID=" + SQL_UID + ";PWD=" + SQL_PWD
    
    lnSQLConnHandle = SQLSTRINGCONNECT(lcSQLConnStr)
    IF lnSQLConnHandle < 1
        LOCAL laErrArray[1]
        AERROR(laErrArray)
        WAIT WINDOW "Unable to connect:" + CHR(13) + laErrArray[3]
        RETURN .F.
    ENDIF
    
    lnSQLExecSuccess = SQLEXEC(lnSQLConnHandle, "SELECT stor_id, ord_num, ;
               CONVERT(CHAR(10), ord_date, 101) AS ord_date, qty, ;
               payterms, title_id from sales", "RESULTS")
    
    *!* Note that you can still use just a date value if using a WHERE clause
    *!* to filter the data:
    *!* lnSQLExecSuccess = SQLEXEC(lnSQLConnHandle, "SELECT stor_id, ord_num, ;
    *!*         CONVERT(CHAR(10), ord_date, 101) AS ord_date, qty, payterms, ;
    *!*         title_id from sales WHERE ord_date < '10/28/1993'", "RESULTS")
    
    IF lnSQLExecSuccess < 1
        LOCAL laErrArray[1]
        AERROR(laErrArray)
        WAIT WINDOW "SQLEXEC() Failed:" + CHR(13) +  laErrArray[3]
    ENDIF
    
    SQLDISCONNECT(lnSQLConnHandle)
    
    IF SELECT("RESULTS") > 0
        SELECT RESULTS
        BROWSE NOWAIT
    ENDIF
    					
  2. Digite seu nome, identificação de usuário e senha na parte superior do código do SQL Server no local indicado.
  3. Salve e execute o código.

Referências

Para obter informações adicionais sobre a função CONVERT do SQL, consulte os livros online do SQL Server.

Propriedades

ID do artigo: 308133 - Última revisão: quarta-feira, 2 de fevereiro de 2005 - Revisão: 3.4
A informação contida neste artigo aplica-se a:
  • Microsoft Visual FoxPro 3.0 Standard Edition
  • Microsoft Visual FoxPro 3.0b Standard Edition
  • Microsoft Visual FoxPro 5.0 Standard Edition
  • Microsoft Visual FoxPro 5.0a
  • Microsoft Visual FoxPro 6.0 Professional Edition
  • Microsoft Visual FoxPro 7.0 Professional Edition
  • Microsoft Visual FoxPro 8.0 Professional Edition
  • Microsoft Visual FoxPro 9.0 Professional Edition
Palavras-chave: 
kbmt kbcodesnippet kbdatabase kbinfo KB308133 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 308133

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com