Histórico da Página
...
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
user function test1() Local nHandle1 := TCLink( "MSSQL/DSN1", "127.0.0.1", 7890 ) Local cTable1 := "MYTABLE" Local cRDD := "TOPCONN" Local aStruct := {} Local aBlocks := {} Local aValues := {} Local nI := 0 Local nJ := 0 Local nLen := 0 Local nRecs := 0 Local xValue // Cria a tabela DBCreate( cTable1, { { "CPOC", "C", 10, 0 }, ; { "CPON", "N", 3, 0 }, ; { "CPOD", "D", 8, 0 }, ; { "CPOL", "L", 1, 0 }, ; { "CPOM", "M", 20*1024, 0 } }, cRDD ) // Abre a tabela 1 em modo exclusivo criando uma área de trabalho DBUseArea( .T., cRDD, cTable1, (cTable1), .F., .F. ) // Pega a estrutura da tabela aStruct := DBStruct() nLen := Len( aStruct ) // Pega um codeblock para cada campo do tabela passando o nome do campo for nI := 1 to nLen AAdd( aBlocks, FieldBlock( aStruct[nI][1] ) ) next nI // Define os valores do registro dos registros que serão inseridos AAdd( aValues, { "AAA", 123, Date(), .T., Replicate( "A", 20*1024 ) } ) AAdd( aValues, { "BBB", 321, Date() + 10, .F., Replicate( "B", 20*1024 ) } ) nRecs := Len( aValues ) // Insere um registro os registros for nI := 1 to nRecs DBAppend( .F. ) // Faz o Eval do bloco de código informando o valor // Isso irá fazer a atribuição do valor ao campo for nInJ := 1 to nLen Eval( aBlocks[nInJ], aValues[nI][nJ] ) next nInJ DBCommit() next nI // Vai para o primeiro registro DBGoTop() while !eof() // Exibe o conteúdo de cada campo do registro for nI := 1 to nLen conout( Eval( aBlocks[nI] ) ) next nI DBSkip() enddo // Fecha a área de trabalho DBCloseArea() // Apaga a tabela no SGBD TCDelFile( cTable1 ) // Desconecta TCUnlink( nHandle1 ) return |
...
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas