SQLiteStudio 3.1.0 내에서 동일한 SQL 쿼리를 사용하고 전달하는 동일한 매개 변수를 사용하여 문제없이 작동합니다. 동일한 SQL 사용하고 아래 VB VB에서 코드를 사용할 때 프로젝트는 올바른 값 대신 0을 반환합니다.실제 값 대신 0 반환
Private Function GetData() As Object
Dim sql As String = "Select Data from Table where Option = ?"
Return FunctionObject(sql, New List(Of Object) From {"This is a Test"})
End Sub
Public Function FunctionObject(ByVal sql As String, ByVal parameters As List(Of Object)) As Object
Using sqlconnection As New SQLiteConnection(ConnectionString)
sqlconnection.Open()
Using Cmd As New SQLiteCommand(sql, sqlconnection)
Dim par As SQLiteParameter
For Each parm As Object In parameters
par = Cmd.CreateParameter()
par.Value = parm
Cmd.Parameters.Add(par)
Next
FunctionObject = Cmd.ExecuteScalar()
End Using
End Using
End Function
매개 변수의 메서드에 개체 목록을 전달합니다. 연결 문자열은 다른 SQL 쿼리를 작동시키기 때문에 작동합니다. OleDb를 사용하는 동일한 코드 집합을 가지고 있는데이 OleDb 구문은이 동일한 SQL 문으로 작동합니다. 그래서 뭔가가 내가 SQLite 및 OleDb 연결 및 executeScalar 하나에서 0을 반환하고 다른 올바른 문자열을 반환하기 때문에 동작을 만들 수 있습니다 놓친 오전 무엇입니까?
'sqlQuery '란 무엇입니까? 'sql'에 대한 질의를 끝내지 않았습니다. 그리고 매개 변수도 이름이없는 것으로 보입니다. – TyCobb
죄송합니다. Cmd에 올바른 변수가 없습니다. sql은 SomeVariable이라는 이름의 열 데이터를 찾고 있습니다. –
당신의 진술은 여전히 불완전하지만 방법으로 전달됩니다. 'Table에서 데이터 선택하기 Option ='is like is is it is it.};)이 질문을보십시오 : http://stackoverflow.com/questions/809246/adding-parameters-in-sqlite-with-c- 날카로운 – TyCobb