我是新來Visual Studio和asp.net與VB,並一直試圖破解下面的代碼來運行一個簡單的SQL查詢在VB以html格式顯示。從字符串「SELECT * FROM DB」轉換爲「整數」類型無效
代碼:
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.SqlTypes
Imports System.Data.Odbc
Imports Microsoft.SqlServer.Server
Imports System.Data.OleDb
Imports System.Data.OleDb.OleDbCommand
Imports Oracle.DataAccess.Client
Public Class WebForm1
Inherits System.Web.UI.Page
Private oradb = "Data Source=(DESCRIPTION=" _
+ "(ADDRESS=(PROTOCOL=TCP)(HOST=###.###.###.###)(PORT=####))" _
+ "(CONNECT_DATA=(SERVICE_NAME=#)));" _
+ "User Id=user;Password=pwrd;"
Dim conn As New OracleConnection(oradb.ToString)
Dim sql As String = "SELECT * FROM Db WHERE CLMN = 'Y'"
Dim cmd As New OracleCommand(sql, conn)
Dim dr As OracleDataReader
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
MySub()
End Sub
Sub MySub()
conn.Open()
cmd.CommandType() = sql
dr = cmd.ExecuteReader()
dr.Read()
GridView1.DataSource = dr.Read()
conn.Close()
conn.Dispose()
End Sub
End Class
代碼分解一下,cmd.CommandType() = sql
配售.ToString
後,即cmd.CommandType() = sql.ToString
,這進而導致代碼在GridView1.DataSource = dr.Read()
帶有無效數據源錯誤打破。
我一直在研究一個修復程序,似乎認爲我需要在某處聲明cmd.CommandType.Text
,但不能完全破壞代碼。
感謝任何建議,道歉,如果它是一個明顯的。谷歌並不是我的朋友。
謝謝
你把SQL變成 '的CommandType'。如果這是 '命令' ? –
不,將'CommandType'改爲'Command'是無效的,將其改爲'CommandText',然後在'GridView1.DataSource = dr.Read()'行給我這個錯誤。 – chrisberry86
正在從內存中移出,但應該有我會建議找到一個很好的演練,然後再繼續前進,因爲代碼中有一些古怪的東西(試圖分配給函數結果,將.ToString()放在一個字符串上,一個dr.Read()放在它自己的位置等等) –