none
To com um problema invisivel no sql server... RRS feed

  • Pergunta

  • Possuo um sistema, e esse sistema é fornecido informações de um servidor somente para banco de dados(sql server 2008). Logo tenho um outro servidor tambem somente para banco de dados, ele é uma copia identica do primeiro servidor, a instalação, as tabelas, bases, etc...

    os dois servidores funcionavam perfeitamente, do nada um para de funcionar dando o erro:

    operação ole db de varias etapas gerou erros. verifique cada valor de estatus ole db.

    numero de erro: -2,147218E+09,

    -------------------

    o fonte do programa não é, porque funciona no outro servidor perfeitamente

    ja reinstalei o sql

    ja restaurei as bases.

    peguei um servidor zerado e instalei o sql e joguei as bases e da o mesmo erro.

    --------

    tenho quase certeza de que possa ser algum arquivo corrompido, ou uma configuração pos instalação.. mas nao faço ideia de qual ou do que pode ser...

    preciso de um help

    • Movido Gustavo Maia Aguiar terça-feira, 29 de junho de 2010 17:05 (De:Programação avançada com o SQL Server)
    terça-feira, 29 de junho de 2010 16:45

Respostas

  • MK,

    Fiz um teste em nosso ambiente de testes mudando o language para Portugues... Notei que soh funciona se vc também alterar o default languade dos usuários...

    que no seu caso sería:

    EXEC sp_configure 'default language', 0
    
    go
    
    EXEC sp_defaultlanguage 'sa', 'us_english'
    
    go
    
    reconfigure
    

    Rafael
    • Marcado como Resposta Maico_MK quinta-feira, 1 de julho de 2010 18:55
    quinta-feira, 1 de julho de 2010 18:15

Todas as Respostas

  • MK,

    Veja este link falando sobre esse assunto: http://support.microsoft.com/kb/269495/pt-br

    Mas, por curiosidade, qual é o tipo de operação executado para que o erro ocorra??? Jah tentou restaurar essa base para teste e inserir registros em sua tabela manualmente (pelo client, por exemplo)?... Para checar a integridade de seu db, use o DBCC CHECKDB('Seu DB'). Caso tenha dúvida sobre esse comando, verifique o BOL para mais informações...

    att.

    Rafael

    terça-feira, 29 de junho de 2010 17:20
  • qualquer tipo de operação que ele venha a consultar a tabela...

    são varios tipos de operações e erro, mas sempre o mesmo numero e mesmo sentido de erro...

    a questão é, porque ta dando erro com mais dois servidores somente com o sql server 2008, so funciona em um, mas antes funcionava nos dois...

    instalei um outro servidor zerado como falei acima e tambem deu erro, então... kkk ... entao... realmente, ja tem 4 dias que to nessa briga....

    --------------------------------------------------------

    verifiquei o link que me passou...

    criei crie o valor OLEDB_SERVICES nas chaves do Registro, e nada... o erro continua...

    bom eu tentei, mas ja sabia que nao iria funcionar... porque... questao...

    Meu sistema é usado em rede por varios pcs... entao... ja sabreia que somente um regedit não resoveria....

    ----------------------------------------------------------

    tenho certeza que o problema ta no sql... so pode...

    não me resta outra opção. tem que ta no sql... mas onde... ?????

     

    terça-feira, 29 de junho de 2010 17:58
  • MK,

    Desculpe insistir...rssrsrsrsr, mas vc jah tentou simular as operações pelo qual seu sistema apresenta erro diretamento no seu DB, tipo pelo management studio... pq se vc conseguir simular, descobrirá com certeza se o problema está no DB ou não...

    Quanto as configurações, é válido verificar se o collation do servidor 2008 está igual aos demais...

    Ah... outra pergunta... vc consegue conectar a esta base pelo management studio? Consegue testar operações de Select, insert e update??

    att.

    Rafael

    terça-feira, 29 de junho de 2010 19:24
  • Bom ja tinha tentado mas acredito que não chegei a comentar...

    realmente, comando simples consigo, básico...

    mas comandos mais complexos, nao vai da erro...

    ex.:

    um where em somente uma linha =ok - Funciona

    ---------

    um update, set, e where = falha  - Não Funciona

    erro: Mensagem 242, Nível 16, Estado 3, Linha 2
    A conversão de um tipo de dados varchar em um tipo de dados smalldatetime resultou em um valor fora do intervalo.

    ------------------------------------------------------------

    Conclusão,

    o problema ta no Banco de Dados, mas como reparar???

    Faz ideia por onde posso comessar ???

    - será que desinstalando e instalando o sql funcionaria ???

    mas deve ter alguma outra maneira, mais qual???

    quarta-feira, 30 de junho de 2010 15:41
  • MK,

    Reparei que a mensagem do seu server está em portugues.... e os demais (que estão funcionando) também estão em Portugues (o default language)??? Pq com certeza este fator geraría exatamente o erro que vc está tendo, porque os formatos de datas são diferentes...

    Teste esse exemplo, e veja qual formato de data está sendo usado pelo seu server... Um dos dois "set" não conseguirá ser executado e retornará o erro que vc postou acima. Então, verifique se o formato de data que sua aplicação está enviando para o server, é a mesma que ele aceita...

    DECLARE
        @DATA SMALLDATETIME

    SET @DATA = '2010-06-30'
    SET @DATA = '30-06-2010'

    Atenciosamente,

    Rafael

     

    quarta-feira, 30 de junho de 2010 19:20
  • Kara, Bigo!!!!

    Realmente o erro é o formato de data... karaka.....

    testei nos 3 servidores, e o problema realmente nos dois é a configuração do sql com a data... mas... sempre tem um mas ... kkk

    o server le a data   18-01-2010 (d/m/a)

    e eu preciso que ele leia   2010-18-01 (a/m/d)

    -------

    não sei se vc ja usou

    usei o comando    SET DATEFORMAT YMD

    dei boot no server e nada.. não funcionou... o formato da data continua d/m/a

    conhece algum outro comando. ou algum tipo de configuração no proprio sql ???


    quarta-feira, 30 de junho de 2010 20:52
  • MK,

    Legal, que chagamos em pelo menos o causador...heheheheh. O SET DATEFORMAT soh vale para a conexão atual.... Olha, eu vou te dizer algo que eu não testei. Voce poderá  trocar o Default language do seu server (propriedades do servidor+advanced+default language) para English . Depois ainda é válido verificar o usuário utilizado na sua aplicação, se o default language dele também está ingles...

    Outra coisa que pode ter acontecido é que seu sistema operacional está em portugues , ai o sql server procedeu a instalação para o idioma portugues...

    Então.... caso vc alterando o default language do sql server e dos usuários (para ingles) ainda não der certo, e este server for ambiente de teste, experimente trocar o idioma (no regional) do seu servidor  windows para English (United States)... Tem que funcionar...r.rsrsrsrs

    att.

    Rafael

     

    quarta-feira, 30 de junho de 2010 21:14
  • Rafael,

    heheh,, vc não imagina...

    Bom fiz quase todos os procedimentos... mas não funcionou...

    --------------------------------------

    Não consegui, ou melhor não conhecço essa opção de trocar o Default language do server, no proprio sql seria, correto???

    Mas no Usuário, como??? se poder me explicar... agradeço, mas vou tentando...

    quinta-feira, 1 de julho de 2010 15:17
  • MK,

    veja

    SELECT @@language, @@langid (Verifique a language atual do seu servidor)

    Se os servidores que estão funcionando estão em ingles, deixe o "2008" com o padrão ingles também...

    EXEC sp_configure 'default language', 0 --Muda o language do servidor para ingles

    EXEC sp_defaultlanguage 'usuario da sua aplicacao', 'us_english'  --Muda o language do usuário para ingles ...

    RECONFIGURE --Procedimento que aplica as alterações...

    Mk, tenha certeza de estar fazendo estas alterações em um ambiente de teste , ok???

    att.

    Rafael

    quinta-feira, 1 de julho de 2010 17:14
  • Rafael,

    A coisa ta osso,...kkk

    não vai, o comando reconhece, funciona blz... mas nao muda de português para inglês.

    ele fala que alterou, mas quando verifico a language continua português???

    ???????????????????????

    quinta-feira, 1 de julho de 2010 17:34
  • MK,

    Vc executou o RECONFIGURE após o EXEC sp_configure 'default language', 0 ??

    Li aquí que também é recessário dar um restart no servidor (sql server).... rrsrsrsr.. A gente vai chegar lah..


    att.

    Rafael.

    quinta-feira, 1 de julho de 2010 17:49
  • Realizei o comando perfeitamente... kk

    dei boot no servidor... e ja to realizando um outro comando...

    so estou aguardando o resultado,

    jaja, te aviso o que deu.... ou mehor , skkkk , se deu ____... kkkkkkk

     

    to lendo um artigo, no forum legal... da uma olhada....

     

    http://translate.google.com.br/translate?hl=pt-BR&sl=en&u=http://www.sqlteam.com/forums/topic.asp%3FTOPIC_ID%3D62891&ei=U9UsTKONI8GC8gb31rWhDg&sa=X&oi=translate&ct=result&resnum=1&ved=0CBsQ7gEwAA&prev=/search%3Fq%3DEXEC%2Bsp_configure%2B%2527default%2Blanguage%26hl%3Dpt-BR%26client%3Dfirefox-a%26hs%3DcYO%26rls%3Dorg.mozilla:pt-BR:official

    quinta-feira, 1 de julho de 2010 18:02
  • kkkkkkkkkkkkkkkkkkkkkkkkkk

     

    Rafael, meu caro.....

    fiz esse comando abaixo... kkkk, ele continua lendo o formato de data por (d/m/a), mas mudou toda interface para britanico... kkkkkkk

    tudo errado.....

    Sa ALTER LOGIN COM DEFAULT_LANGUAGE = britânicos;
     GO

    kkkkkkkk
    quinta-feira, 1 de julho de 2010 18:10
  • MK,

    Fiz um teste em nosso ambiente de testes mudando o language para Portugues... Notei que soh funciona se vc também alterar o default languade dos usuários...

    que no seu caso sería:

    EXEC sp_configure 'default language', 0
    
    go
    
    EXEC sp_defaultlanguage 'sa', 'us_english'
    
    go
    
    reconfigure
    

    Rafael
    • Marcado como Resposta Maico_MK quinta-feira, 1 de julho de 2010 18:55
    quinta-feira, 1 de julho de 2010 18:15
  • Rafael,

     

    Meu caro

    FUNCIONOUUUUUUUU.....


    -----------------

    Realmente, alterei o usuário para inglês e tudo voltou a funcionar....

    Maravilha....

    Rafael, agradeço muito pela paciência e pela força...

    Se precisar tambem... to sempre aqui...


    ---------------------------------

    Abraços.....

    • Editado Maico_MK quinta-feira, 1 de julho de 2010 19:59
    quinta-feira, 1 de julho de 2010 18:30
  • Mk,

    Que bom que chegamos a uma solução...rsrsrsrs. Não há o que agradecer, pq eu também aprendi mto

    Estamos sempre por aqui..

    att.

    Rafael

    quinta-feira, 1 de julho de 2010 19:21