SQL ACCESS ERRO NA EXPRESAO DO CRITERIO
ola amigos eu esto com propleminha eu criei um banco de acess com tabela cliente e dois campos
id tipo de dados é int chave primaria com increment
so quando uso select para selecionar id da um erro na expresão do criteiro
como faço para converte esse id pra int
por favor me ajudem
id tipo de dados é int chave primaria com increment
so quando uso select para selecionar id da um erro na expresão do criteiro
como faço para converte esse id pra int
por favor me ajudem
Citação:so quando uso select para selecionar id da um erro na expresão do criteiro
como faço para converte esse id pra int
Puxa, axo que faltam parâmetros para poder ajudá-lo até aki também não axa?
Como posso advinhar qual sua string SQL e demais informações para ter alguma chance de explicar direito o que deve fazer ?
Qual comando vc está mandando para o banco ?
A 1a coisa a fazer é ver a string resultante do seu código e analisar se está correta.
Uma outra boa dica é que se não tem certeza da sintaxe do comando SQL que está tentando enviar teste primeiro no ACCESS pra ver se funciona mesmo.
então EMERSONTADEU
meu banco de dados access esta assim
====================================================================================
Chave Nome do Campo Tipo de Dado Tamanho
------------------------------------------------------------------------------------
[txt-color=#df0101] * | id | Int | 0 [/txt-color]
| nome | Text | 0
| endereco | Text | 0
| fone | Text | 0
| celular | Text | 0
| data | Text | 0
| bairro | Text | 0
| cidade | Text | 0
| uf | Text | 0
| cep | Text | 0
| cpf | Text | 0
| rg | Text | 0
| obs | Text | 0
note que no id esta int ou seja outo numeração
porem quando uso a o comando SELECT para selicionar o id gera um erro na expresão do critério
meu banco de dados access esta assim
====================================================================================
Chave Nome do Campo Tipo de Dado Tamanho
------------------------------------------------------------------------------------
[txt-color=#df0101] * | id | Int | 0 [/txt-color]
| nome | Text | 0
| endereco | Text | 0
| fone | Text | 0
| celular | Text | 0
| data | Text | 0
| bairro | Text | 0
| cidade | Text | 0
| uf | Text | 0
| cep | Text | 0
| cpf | Text | 0
| rg | Text | 0
| obs | Text | 0
note que no id esta int ou seja outo numeração
porem quando uso a o comando SELECT para selicionar o id gera um erro na expresão do critério
[txt-color=#0404B4]Public Sub[/txt-color] Selecionar([txt-color=#0404B4]ByVal [/txt-color]id [txt-color=#0404B4]As Strin[/txt-color]g)
If con.State = ConnectionState.Closed Then con.Close()
con.Open()
Dim cmd As New OleDbCommand([Ô][txt-color=#df0101]select * from os WHERE id [/txt-color]= [ô][Ô] & id & [Ô][ô][Ô], con)
Dim drdr As OleDbDataReader
drdr = cmd.ExecuteReader
drdr.Read()
code = drdr.Item([Ô][txt-color=#ff0000]id[/txt-color][Ô])
data = drdr.Item([txt-color=#ff0000][Ô]data[Ô][/txt-color])
[txt-color=#0404B4]end sub[/txt-color]
Só tira as aspas simples da linha do SELECT e, com esses nomes estranhos na tabela, coloca entre colchetes os nomes.
Para evitar que sejam passados caracteres que não sejam numeros, converte ele também...
Para evitar que sejam passados caracteres que não sejam numeros, converte ele também...
Dim cmd As New OleDbCommand([Ô]select * from [os] WHERE [id] = [Ô] & cstr(val(id)), con)
[txt-size=2]Seu código ficará assim!!![/txt-size]
Quando a codição dentro do Where for em um campo do tipo:
Caracter -> você deve utilizar Aspas simples
Numerico, Int, AutoIncrement, -> vocÊ não deve utilizar aspas simples
Date - > você deve utilizar # antes e depois da data
Quando a codição dentro do Where for em um campo do tipo:
Caracter -> você deve utilizar Aspas simples
Numerico, Int, AutoIncrement, -> vocÊ não deve utilizar aspas simples
Date - > você deve utilizar # antes e depois da data
Public Sub Selecionar(ByVal id As String)
If con.State = ConnectionState.Closed Then con.Close()
con.Open()
Dim cmd As New OleDbCommand([Ô]select * from os WHERE id = [Ô] & id, con)
Dim drdr As OleDbDataReader
drdr = cmd.ExecuteReader
drdr.Read()
code = drdr.Item([Ô]id[Ô])
data = drdr.Item([Ô]data[Ô])
end sub
[txt-size=2] [/txt-size]
CALTABIANO valeu cara
RCMRO infelismente seu condigo não resolveu me problema so do caltabiano mesmo
RCMRO infelismente seu condigo não resolveu me problema so do caltabiano mesmo
Tópico encerrado , respostas não são mais permitidas