私はVBとASP.netを初めて使用しており、プロジェクト単位で学習しています。 ASP.net環境でVBを使用してデータベース参照ツールを構築しようとしています。ASP.net Visual Basic「Microsoft.ACE.OLEDB.12.0」プロバイダがローカルマシンに登録されていません
私のウェブサイトは、Windows Server 2012 R2のIIS 7でホストされています。データベースはWebサーバー上のAccess 2013 DBです
私のVB GUIでページに移動すると正しく表示されますが、私のルックアップを行うと「Microsoft.ACE.OLEDB.12.0」のエラーが表示されます。プロバイダーはローカルマシンに登録されていません。
スタックトレース:
[InvalidOperationException: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.]
System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper) +1634602
System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection) +1651428
System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +100
System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup, DbConnectionOptions userOptions) +61
System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection) +953
System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions) +6600667
System.Data.ProviderBase.DbConnectionInternal.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +27
System.Data.OleDb.OleDbConnection.Open() +47
Nekros.cmdLookup_Click(Object sender, EventArgs e) in C:\xampp\htdocs\nekros\ePSA.aspx.vb:19
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +155
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3804
マイコード:
Imports System.Data.OleDb
Partial Class Nekros
Inherits System.Web.UI.Page
Dim provider As String
Dim dataFile As String
Dim connString As String
Public myConnection As OleDbConnection = New OleDbConnection
Public dr As OleDbDataReader
Dim prog As String
Dim start As String
Private Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
provider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source ="
dataFile = "C:\Shares\share\Projects\Nekros\Database\Nekros.accdb" ' Change it to your Access Database location
connString = provider & dataFile
myConnection.ConnectionString = connString
End Sub
Private Sub cmdLookup_Click(sender As Object, e As EventArgs) Handles cmdLookup.Click
myConnection.Open()
txtFull.Text = ""
txtMeaning.Text = ""
txtPOA.Text = ""
Dim str As String
str = "SELECT * FROM ePSA WHERE (ePSA = '" & txtePSA.Text & "')"
Dim cmd As OleDbCommand = New OleDbCommand(str, myConnection)
dr = cmd.ExecuteReader
While dr.Read()
txtFull.Text = dr("Error").ToString
txtMeaning.Text = dr("Meaning").ToString
txtPOA.Text = dr("POA").ToString
End While
myConnection.Close()
End Sub
End Class
助けてください!
また、私はまだ非常に新しいので、できるだけ簡単に説明してください。