2016-10-16 6 views
0

私は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 

助けてください!

また、私はまだ非常に新しいので、できるだけ簡単に説明してください。

答えて

関連する問題