watt Posted October 15, 2006 at 11:54 PM Report #57711 Posted October 15, 2006 at 11:54 PM Boas pessoal! tenho estado com um problema muito estranho... tenho um modulo com umas strings Publicas por exemplo user, então acontece que no formulario1 dou um valor ao user (user="watt"), depois no formulario2 tento fazes uma sintax em sql usando a pariavel. sql="Select * from utilizadores where user = ' & user & " '; "; o que é que aconce ... a sintax fica incompleta Select * from utilizadores where user ='watt falta a '; do fim ... ou seja ... falta sempre td o que vem a seguir á variavel ... alguem sabe pq é que me aconte isto ??
Saco Posted October 16, 2006 at 12:58 AM Report #57714 Posted October 16, 2006 at 12:58 AM sql="Select * from utilizadores where user = ' & user & " '; "; Eu nunca vi vb à frente, mas não faltam praí umas aspas? Tipo sql="Select * from utilizadores where user = '" & user & " '; ";
watt Posted October 16, 2006 at 04:29 PM Author Report #57780 Posted October 16, 2006 at 04:29 PM tenho sql="Select * from utilizadores where user = ' & user & " '; " só que lá em cima pus no fim um ; por acidente.
Tiago Salgado Posted October 16, 2006 at 04:49 PM Report #57781 Posted October 16, 2006 at 04:49 PM Realmente é um bocado estranho. Experimenta por um breakpoint nessa linha e usa os Watchs pra veres se ta algo a correr mal. Cumps
SoulOnFire Posted October 16, 2006 at 05:31 PM Report #57792 Posted October 16, 2006 at 05:31 PM tenho sql="Select * from utilizadores where user = ' & user & " '; " só que lá em cima pus no fim um ; por acidente. Faz uma coisa... copia exactamente o codigo para aki... é k falta mesmo umas " aspas sql="Select * from utilizadores where user = ' (aki ") & user & " '; " Fikem Bem!!!Miguel Duarte - (SoulOnFire)O meu BLOG - XAML E WPF - http://wpfpt.wordpress.com/
watt Posted October 16, 2006 at 08:02 PM Author Report #57875 Posted October 16, 2006 at 08:02 PM neste momento estou confuso, não sei se o problema é do servidor ou cliente... é o seguinte o cliente manda a sintax em sql para o server, e depois este responde o resultado. Codigo do Cliente - no moduluo Public user as string - no form de login se for aceite user= txtbuser.text - no formulario2 dim sql="Select * from utilizadores where user = ' & user & " '; " Dim msg As [byte]() = Encoding.UTF8.GetBytes(sql) stream.Write(msg, 0, msg.Length) --- Mandou para o server, agora no server tenho ----------------------- stream.Read(bytes, 0, n) dados = Encoding.UTF8.GetString(bytes) depois qd vou correr o comando diz erro na sintax, por causa de uma aspa q não percebo... no debug, realmente falta uma aspa no fim. n sei onde se perde mas agora n sei se o problema é no envio ou não
SoulOnFire Posted October 16, 2006 at 08:15 PM Report #57884 Posted October 16, 2006 at 08:15 PM Ve bem esta imagem!!! http://img111.imageshack.us/img111/8892/imagemvr8.jpg sql="Select * from utilizadores where user = '" & user & " '; " só pode ser isto Fikem Bem!!!Miguel Duarte - (SoulOnFire)O meu BLOG - XAML E WPF - http://wpfpt.wordpress.com/
watt Posted October 16, 2006 at 08:33 PM Author Report #57899 Posted October 16, 2006 at 08:33 PM épa... escrevi mal akino forum, pq noprograma tenho essa aspa o cliente enviou: "Select * from utilizadores where user = '" & user & " ' and pass='" & passw & "'; " o server qd vai executar diz: comando já transformado - "Select * from users where user = 'x' and password = '7694f4a66316e53c8cdd9d9954bd611d'; MySql.Data.MySqlClient.MySqlException = {"#42000Você tem um erro de sintaxe no seu SQL próximo a ';' na linha 1"}
SoulOnFire Posted October 16, 2006 at 08:54 PM Report #57907 Posted October 16, 2006 at 08:54 PM e sem o ponto e virgula do final??? mysql n é mt o meu forte... mas experimenta!!!! Fikem Bem!!!Miguel Duarte - (SoulOnFire)O meu BLOG - XAML E WPF - http://wpfpt.wordpress.com/
watt Posted October 16, 2006 at 09:06 PM Author Report #57919 Posted October 16, 2006 at 09:06 PM mas já está lá.o que eu estou a reparar é que sp q tiro dados da stream, nunca trabalhão bem, e as string ao que parecetêm deestar entr aspas,e as retiradas da stream só têm a 1º aspa... é o q repareri no debug. e se tentar juntar mais kalker coisa á string com um & ou +, ele ignora o que vem depois a estes 2 caracteres.
Delta Posted October 17, 2006 at 07:34 AM Report #57986 Posted October 17, 2006 at 07:34 AM eu não faço os meus selects assim, e ainda por cima os mais complexos, uso parâmetros que depois o controlador se encarrega de substituir faço tipo isto : sql = "SELECT * " & _ "FROM RAT_PLA_TAR_05 " & _ "WHERE RPT_NUM_TAR like :pRPT_NUM_TAR AND " & _ " RPT_DES_TAR like :pRPT_DES_TAR AND " & _ "((RSE_RDI_RDI_COD_DIR like :pRSE_RDI_RDI_COD_DIR) OR (RSE_RDI_RDI_COD_DIR IS NULL)) AND " & _ "((RSE_RSE_COD_SER like :pRSE_RSE_COD_SER) OR (RSE_RSE_COD_SER IS NULL)) AND " & _ "((RGR_RGR_USER like :pRGR_RGR_USER) OR (RGR_RGR_USER IS NULL)) AND " & _ " PRO_RPO_COD_PRO like :pPRO_RPO_COD_PRO " Dim cmd As New OracleCommand(sql, conn) Dim da As New OracleDataAdapter(cmd) Dim ds As New DataSet Dim myCol As New DataColumn Dim myRow As DataRow cmd.Parameters.Add("pRPT_NUM_TAR", rs.RPT_NUM_TAR) cmd.Parameters.Add("pRPT_DES_TAR", rs.RPT_DES_TAR) cmd.Parameters.Add("pPRO_RPO_COD_PRO", rs.PRO_RPO_COD_PRO) cmd.Parameters.Add("pRSE_RSE_COD_SER", rs.RSE_RSE_COD_SER) cmd.Parameters.Add("pRSE_RDI_RDI_COD_DIR", rs.RSE_RDI_RDI_COD_DIR) cmd.Parameters.Add("pRGR_RGR_USER", rs.RGR_RGR_USER) Try da.Fill(ds, "RAT_PLA_TAR_05") For Each myRow In ds.Tables(0).Rows For Each myCol In ds.Tables(0).Columns rs.fill(myCol.ColumnName, myRow(myCol).ToString()) Next Next Return ds.Tables(0).Rows.Count.ToString Catch ex As Exception Return ex.Message.ToString End Try
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now