VB6 COM ACESS / SQL SERVER

MARCIOGROSSO 06/08/2013 19:38:29
#427115
Boa noite pessoal

Utilizo o VB6 com banco de dados Access 2000, porem preciso migrar para SQL Server. O problema é que toda minha programacao esta em base DAO 3.6 e utilizo os comandos openrecordset nesse set de registros incluo com ADDNEW e edito com EDIT e UPDATE.

Ja migrei o banco Access para SQL Server e ja refiz os strings de conexao usando OpenDataBase

Funciona tudo, acessa o banco, faz consultas e tudo.

A unica coisa que nao funciona é a alteracao no banco de dados pelo metodo openrecordset utilizado. Vem um erro informando que o banco SQL é somente para leitura.

Se eu trocar a forma de atualizacao de addnew, para insert puro com comando SQL funciona.

Segue um trecho do codigo para ilustrar o que eu disse. Meu codigo tem mais de 1000 forms e trocar as instrucoes uma a uma seria inviavel

Espero que alguem me dê alguma luz.

Já agradeço antecipamente.

Abs


VA_Cmd = [Ô]select * from AP_ONLINE where CODI = -1[Ô]
Set Sp_Aux = DB.OpenRecordset(VA_Cmd)

If Sp_Aux.EOF Then

Sp_Aux.AddNew
Sp_Aux.OP = VA_OP
Sp_Aux.NSEQ = VA_NSeq
Sp_Aux.OPER = Val(TB_Codi)
Sp_Aux.TIPO = [Ô]A[Ô]
Sp_Aux.PERDA = 0
Sp_Aux.HIST = 1
Sp_Aux.ciente = [Ô]N[Ô]

Sp_Aux.OBSE = [Ô]ABERTURA AUT.PELO PONTO[Ô]
Sp_Aux.INST = [Ô] [Ô]

Sp_Aux.QTDE = 0
Sp_Aux.FINA = [Ô] [Ô]

Sp_Aux.INIC = Trim$(Mid$(Time, 1, 5))
Sp_Aux.Data = DateValue(Date)

Sp_Aux.MAQU = Val(VA_Maqu)

If Trim$(Mid$(CB_Ferr.Text, 1, 25)) <> [Ô][Ô] Then
Sp_Aux([Ô]FERR[Ô]) = Trim$(Mid$(CB_Ferr, 1, 25))
Else
Sp_Aux([Ô]FERR[Ô]) = [Ô] [Ô]
End If


Sp_Aux.PROG_X = va_px

Sp_Aux.Update


SINKERTEC 07/08/2013 08:02:29
#427136


Bom dia

Vc ta usando SQL Server com DAO?
OMAR2011 07/08/2013 08:29:53
#427140
é igual o SINKERTEC postou,nunca consegui abri Banco de Dados Sql Server com Dao.
Com Mysql eu consigo.
Coloque essa conexão ai,vou fazer um teste aqui.
Estou interessado nesta Conexão.
MARCIOGROSSO 07/08/2013 12:10:55
#427170
Bom dia Amigão

segue o string de conexao com o SQL

strConnection = [Ô]ODBC;Driver={SQL Server};Server=172.20.0.199;Database=IBRAM_2010;Uid=teste;Pwd=teste[Ô]
Set DB = OpenDatabase([Ô][Ô], False, False, strConnection)

Pode me passar o string para conectar o MySQL para eu testar ?
MARCELO.TREZE 07/08/2013 13:04:10
#427175
Gente desculpe me intrometer, mas DAO com SQLserver, é a mesma coisa que colocar motor de fusca em ferrari, derrepente migrar para ADO pode te economizar trabalho no futuro pense bem (DAO é descontinuado) e não conseguirá usar todos recursos do SQLserver.
MARCIOGROSSO 07/08/2013 13:20:36
#427179
Caro amigo,
eu sei disso, compreendo, porem meu maior problema é ter que reescrever mais de 20000 linhas de código para ajustar todas as operacoes feitas com os comandos addnew e edit, para instrucoes insert e update.

Levariamos mais de 6 meses para fazer isso e precisamos de uma solucao rapida para migracao de banco Access para SQL Server

Obrigado
KERPLUNK 07/08/2013 13:29:30
#427184
Citação:

:
Caro amigo,
eu sei disso, compreendo, porem meu maior problema é ter que reescrever mais de 20000 linhas de código para ajustar todas as operacoes feitas com os comandos addnew e edit, para instrucoes insert e update.

Levariamos mais de 6 meses para fazer isso e precisamos de uma solucao rapida para migracao de banco Access para SQL Server

Obrigado


Aí é que está(me intrometendo também). As 20000 linhas de código, se refeitas podem virar muito menos linhas, algo muito mais enxuto e otimizado.
MARCIOGROSSO 07/08/2013 13:43:29
#427185
Meu problema é tempo. Podemos até conversar sobre o assunto, que me interessa muito, porem preciso dessa solucao rodando em SQL Server ou MySQL urgente

abs
Faça seu login para responder