0

こんにちは、大学のプロジェクトの締め切りまであと数時間です。
これは基本的な Access データベース駆動型の e コマース サイトです。ホームページ、製品ページ、注文ページ、注文確認ページ、ショッピング カート ページ、および現在の注文ページの表示があります。このサイトでは、3 つのテーブルを持つ Access データベースを使用しています。すべての顧客の詳細を含む Customer テーブル (FirstName、LastName、EmailAdd、CardNo、CardEx、SortCode、DeliveryAdd、Postcode)
すべての製品情報 (ProductID、ProductName、Price、ProductType、Images、ProductDescription) を含む Products テーブル。そして、CustomerID と ProductID を含む Orders テーブル。注文ページを機能させることができました。これにより、顧客が注文した詳細を表示する注文確認ページが表示されます。これまでのところ、注文確認ページの読み込みイベントにあるものは次のとおりです。

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    Dim strDatabaseNameAndLocation As String
    strDatabaseNameAndLocation = Server.MapPath("KingToots.mdb")
    Dim strSQLCommand As String
    strSQLCommand = "SELECT Customer.*, Products.ProductName FROM Customer" & _
        "INNER JOIN Products ON Customer.CustomerID = Orders.CustomerID ORDER BY Customer.CustomerID DESC;" 
    Dim objOleDbConnection As System.Data.OleDb.OleDbConnection
    objOleDbConnection = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.Oledb.4.0; Data Source=" & strDatabaseNameAndLocation)
    objOleDbConnection .Open()
    Dim objOleDbCommand As System.Data.OleDb.OleDbCommand
    objOleDbCommand = New System.Data.OleDb.OleDbCommand(strSQLCommand, objOleDbConnection)
    Dim objOleDbDataReader As System.Data.OleDb.OleDbDataReader
    objOleDbDataReader = objOleDbCommand.ExecuteReader()
    Dim datDataTable As System.Data.DataTable
    datDataTable = New System.Data.DataTable()
    datDataTable.Load(objOleDbDataReader)
    gdvOrderdetails.DataSource = datDataTable
    gdvOrderdetails.DataBind()
    objOleDbConnection.Close()

End Sub

これにより、「FROM 句の構文エラー」というエラーが返されます。私のSQLコードが間違っていると思います。注文ページで注文したときに、生成された CustomerID が顧客テーブルで 12、注文テーブルで 4 であるエントリが Access データベースに追加されたことに気付きました。これらの数値は生成時に同じであるべきではありませんか? 前もって感謝します。

4

2 に答える 2

2

ここにスペースを追加してください:

... Customer**SPACE**" & _
        "INNER...

(顔を強くパーミングして怪我をしないように注意してください)

于 2012-05-04T20:59:26.100 に答える
0

やってみました:

strSQLCommand = "SELECT Customer.*, Products.ProductName FROM Customer,Products" &_ "INNER JOIN Products ON Customer.CustomerID = Orders.CustomerID ORDER BY Customer.CustomerID DESC;"

于 2012-05-04T21:01:35.707 に答える