'。'附近的语法不正确。 [英] Incorrect syntax near '.'.
问题描述
我正在使用ASP.net框架+ SQL。所以无论如何,我正在尝试检索一个数据,它告诉我在'。'附近有一个不正确的语法。我不明白。它说我的问题的根源是第81行,它是
Quote:SqlDataReader dr = com.ExecuteReader();
以下是我的代码。
Edit_DVO.aspx
<%@ Page Title =Language =C#MasterPageFile =〜/ Administrator / Operations.master
AutoEventWireup =trueCodeFile =Edit_DVO.aspx.csInherits =OperationsDepartment.Operations.Edit_DVO%>
< asp:Content ID =Content1ContentPlaceHolderID =headrunat =server>
< / asp:Content>
< asp:Content ID =Content2ContentPlaceHolderID =ContentPlaceHolder1runat =server>
< div id =page-wrapper>
< div class =row>
< div class =col-lg-12>
< h1 class =page-header>
编辑DVO详细信息< / h1>
< / div>
<! - /.col-lg-12 - >
< / div>
<! - /.row - >
< div class =row>
< div class =col-lg-12>
< div class =panel panel-default>
< div class =panel-heading>
查看用户#< asp:Literal ID =ltIDrunat =server/>
< / div>
< form role =formid =form1>
< div class =panel-body>
< div class =row>
< div class =col-lg-6>
< div class =form-group>
< label>
客户姓氏< / label>
< asp:TextBox ID =txtLNrunat =serverclass =form-controlplaceholder =姓氏
required />
< / div>
< div class =form-group>
< label>
客户名字< / label>
< asp:TextBox ID =txtFNrunat =serverclass =form-controlplaceholder =First Name
required />
< / div>
< div class =form-group>
< label>
经销商名称< / label>
< asp:TextBox ID =txtDNrunat =serverclass =form-controlplaceholder =Name
required />
< / div>
< div class =form-group>
< label>
数量< / label>
< asp:TextBox ID =txtQrunat =serverclass =form-controlplaceholder =Quantity
required />
< / div>
< div class =form-group>
< label>
型号< / label>
< asp:DropDownList ID =ddlModrunat =serverclass =form-control>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
报价参考号< / label>
< asp:TextBox ID =txtQRrunat =serverclass =form-controlplaceholder =Quotation Referencerequired />
< / div>
< div class =form-group>
< label>
总金额< / label>
< asp:TextBox ID =txtTArunat =serverclass =form-controlplaceholder =Total Amount
required />
< / div>
< / br>
< / div>
<! - /.col-lg-6(嵌套) - >
< div class =col-lg-6>
< div class =form-group>
< label>
付款条件< / label>
< asp:DropDownList ID =ddlPTrunat =serverclass =form-control>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
目标交付< / label>
< asp:TextBox ID =txtTDrunat =serverclass =form-controlplaceholder =Target Deliveryrequired />
< / div>
< div class =form-group>
< label>
状态< / label>
< asp:DropDownList ID =ddlStatusrunat =serverWidth =200px>
< asp:ListItem Text =ApprovedValue =Approved>< / asp:ListItem>
< asp:ListItem Text =待定值=待定>< / asp:ListItem>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
已收到< / label>
< asp:DropDownList ID =ddlIRrunat =server>
< asp:ListItem Text =YesValue =True>< / asp:ListItem>
< asp:ListItem Text =NoValue =False>< / asp:ListItem>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
已批准< / label>
< asp:DropDownList ID =ddlIArunat =server>
< asp:ListItem Text =YesValue =True>< / asp:ListItem>
< asp:ListItem Text =NoValue =False>< / asp:ListItem>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
已评估< / label>
< asp:DropDownList ID =ddlIErunat =server>
< asp:ListItem Text =YesValue =True>< / asp:ListItem>
< asp:ListItem Text =NoValue =False>< / asp:ListItem>
< / asp:DropDownList>
< / div>
< div class =form-group>
< label>
已处理< / label>
< asp:DropDownList ID =ddlIPrunat =server>
< asp:ListItem Text =YesValue =True>< / asp:ListItem>
< asp:ListItem Text =NoValue =False>< / asp:ListItem>
< / asp:DropDownList>
< / div>
< / div>
<! - /.col-lg-6(嵌套) - >
< / div>
< asp:Button ID =btnCancelrunat =serverclass =btn btn-defaultText =CancelPostBackUrl =〜/ Operations / DVO_History.aspx
formnovalidate /> ;
< asp:按钮ID =btnSubmit_Editrunat =serverclass =btn btn-successText =提交按钮
OnClick =btnSubmit_Edit_Click/>
<! - /.row(嵌套) - >
< / div>
< / form>
<! - /.panel-body - >
< / div>
<! - /.panel - >
< / div>
<! - /.col-lg-12 - >
< / div>
<! - /.row - >
< / div>
< / asp:Content>
Edit_DVO.asx.cs
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.UI;
使用System.Web.UI.WebControls;
使用System.Data.SqlClient;
使用System.Data;
命名空间OperationsDepartment.Operations
{
公共部分类Edit_DVO:System.Web.UI.Page
{
SqlConnection con = new SqlConnection(Helper。 GetCon());
protected void Page_Load(object sender,EventArgs e)
{
if(Request.QueryString [ID]!= null)//记录没有选中
{
int userID = 0;
bool validDVO_ID = int.TryParse(Request.QueryString [ID]。ToString(),out userID);
if(validDVO_ID)
{
if(!IsPostBack)
{
GetModel();
GetPaymentTerm();
GetInfo(userID);
}
}
else
Response.Redirect(DVO_History.aspx);
}
else
Response.Redirect(DVO_History.aspx); //如果meron na
}将其更改为主页面
protected void btnSubmit_Edit_Click(object sender,EventArgs e)
{
con.Open();
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText =更新DVO SET LastName = @ LastName,FirstName = @ FirstName,DealerName = @ DealerName,+
Qty = @ Qty,Model = @ ProductID,QuotationRefNo = @ QuotationRefNo,TotalAmount = @ TotalAmount,+
Term = @ PaymentTermID,TargetDelivery = @ TargetDelivery,Status = @ Status,+
IsReceived = @ IsReceived,IsApproved = @ IsApproved,IsEvaluated = @ IsEvaluated,IsProcessed = @IsProcessed WHERE DVO_ID = @ DVO_ID;
com.Parameters.AddWithValue(LastName,txtLN.Text);
com.Parameters.AddWithValue(FirstName,txtFN.Text);
com.Parameters.AddWithValue(DealerName,txtDN.Text);
com.Parameters.AddWithValue(Qty,txtQ.Text);
com.Parameters.AddWithValue(ProductID,ddlMod.SelectedValue);
com.Parameters.AddWithValue(QuotationRefNo,txtQR.Text);
com.Parameters.AddWithValue(TotalAmount,txtTA.Text);
com.Parameters.AddWithValue(PaymentTermID,ddlPT.SelectedValue);
com.Parameters.AddWithValue(TargetDelivery,txtTD.Text);
com.Parameters.AddWithValue(Status,ddlStatus.SelectedValue);
com.Parameters.AddWithValue(IsReceived,ddlIR.SelectedValue);
com.Parameters.AddWithValue(IsApproved,ddlIA.SelectedValue);
com.Parameters.AddWithValue(IsEvaluated,ddlIE.SelectedValue);
com.Parameters.AddWithValue(IsProcessed,ddlIP.SelectedValue);
com.Parameters.AddWithValue(DVO_ID,Request.QueryString [ID]。ToString());
com.ExecuteNonQuery();
con.Close();
Response.Redirect(DVO_History.aspx);
}
void GetInfo(int ID)
{
con.Open();
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText =SELECT c.LastName,c.FirstName,dt.DealerName,+
d.Qty,p.Model,d.QuotationRefNo,d.TotalAmount,pt.Term,d .TargetDelivery,d.Status+
d.IsReceived,d.IsApproved,d.IsEvaluated,d.IsProcessed+
来自DVO d+
INNER JOIN经销商dt ON d.DealerID = dt.DealerID+
INNER JOIN Customer c ON d.CustomerID = c.CustomerID+
INNER JOIN Product p ON d.ProductID = p.ProductID+
INNER JOIN PaymentTerm pt ON d.PaymentTermID = pt.PaymentTermID WHERE DVO_ID = @ DVO_ID;
com.Parameters.AddWithValue(DVO_ID,ID);
SqlDataReader dr = com.ExecuteReader();
if(dr.HasRows)//记录现有
{
while(dr.Read())
{
ddlMod.SelectedValue = dr [Model]的ToString();
ltID.Text = dr [DVO_ID]。ToString();
ddlStatus.SelectedValue = dr [Status]。ToString();
ddlPT.SelectedValue = dr [PaymentTerm]。ToString();
ddlIR.SelectedValue = dr [IsReceived]。ToString();
ddlIA.SelectedValue = dr [IsApproved]。ToString();
ddlIE.SelectedValue = dr [IsEvaluated]。ToString();
ddlIP.SelectedValue = dr [IsProcessed]。ToString();
txtFN.Text = dr [FirstName]。ToString();
txtLN.Text = dr [LastName]。ToString();
txtDN.Text = dr [DealerName]。ToString();
txtQ.Text = dr [Qty]。ToString();
txtQR.Text = dr [QuantityRefNo]。ToString();
txtTA.Text = dr [TotalAmount]。ToString();
txtTD.Text = dr [TargetDelivery]。ToString();
}
con.Close();
}
其他//不存在
{
con.Close();
Response.Redirect(DVO_History.aspx);
}
}
void GetModel()
{
con.Open();
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText =SELECT ProductID,Model FROM Product;
SqlDataReader dr = com.ExecuteReader();
ddlMod.DataSource = dr;
ddlMod.DataTextField =模型;
ddlMod.DataValueField =ProductID;
ddlMod.DataBind();
con.Close();
}
void GetPaymentTerm()
{
con.Open();
SqlCommand com = new SqlCommand();
com.Connection = con;
com.CommandText =SELECT PaymentTermID,Term FROM PaymentTerm;
SqlDataReader dr = com.ExecuteReader();
ddlPT.DataSource = dr;
ddlPT.DataTextField =Term;
ddlPT.DataValueField =PaymentTermID;
ddlPT.DataBind();
con.Close();
}
}
}
我尝试了什么:
我尝试在我的SQL Server上使用相同的sql命令文本作品。所以我不知道问题出在哪里。我搜索了我的问题的含义,它说我得到一个空对象,但我知道我没有得到任何空对象。
这里有一个简单的语法错误:
d.Qty,p.Model, d.QuotationRefNo,d.TotalAmount,pt.Term,d.TargetDelivery,d.Status +
d.IsReceived,d.IsApproved,d.IsEvaluated,d.IsProcessed +
在<$之后没有逗号(,) C $ C> d.Status ...
I'm using ASP.net framework + SQL. So anyways, I'm trying to retrieve a data it tells me i have an incorrect syntax near '.'. which I do not understand. It says the source of my problem is at line 81 which is
Quote:SqlDataReader dr = com.ExecuteReader();
Below is my code.
Edit_DVO.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Administrator/Operations.master" AutoEventWireup="true" CodeFile="Edit_DVO.aspx.cs" Inherits="OperationsDepartment.Operations.Edit_DVO" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> <div id="page-wrapper"> <div class="row"> <div class="col-lg-12"> <h1 class="page-header"> Edit DVO Details</h1> </div> <!-- /.col-lg-12 --> </div> <!-- /.row --> <div class="row"> <div class="col-lg-12"> <div class="panel panel-default"> <div class="panel-heading"> View User #<asp:Literal ID="ltID" runat="server" /> </div> <form role="form" id="form1"> <div class="panel-body"> <div class="row"> <div class="col-lg-6"> <div class="form-group"> <label> Customer Last Name</label> <asp:TextBox ID="txtLN" runat="server" class="form-control" placeholder="Last Name" required /> </div> <div class="form-group"> <label> Customer First Name</label> <asp:TextBox ID="txtFN" runat="server" class="form-control" placeholder="First Name" required /> </div> <div class="form-group"> <label> Dealer Name</label> <asp:TextBox ID="txtDN" runat ="server" class="form-control" placeholder="Name" required /> </div> <div class="form-group"> <label> Quantity</label> <asp:TextBox ID="txtQ" runat="server" class="form-control" placeholder="Quantity" required /> </div> <div class="form-group"> <label> Model</label> <asp:DropDownList ID="ddlMod" runat="server" class="form-control"> </asp:DropDownList> </div> <div class="form-group"> <label> Quotation Reference No</label> <asp:TextBox ID="txtQR" runat="server" class="form-control" placeholder="Quotation Reference" required /> </div> <div class="form-group"> <label> Total Amount</label> <asp:TextBox ID="txtTA" runat="server" class="form-control" placeholder="Total Amount" required /> </div> </br> </div> <!-- /.col-lg-6 (nested) --> <div class="col-lg-6"> <div class="form-group"> <label> Payment Term</label> <asp:DropDownList ID="ddlPT" runat="server" class="form-control"> </asp:DropDownList> </div> <div class="form-group"> <label> Target Delivery</label> <asp:TextBox ID="txtTD" runat="server" class="form-control" placeholder="Target Delivery" required /> </div> <div class="form-group"> <label> Status</label> <asp:DropDownList ID="ddlStatus" runat="server" Width="200px"> <asp:ListItem Text="Approved" Value="Approved"></asp:ListItem> <asp:ListItem Text="Pending" Value="Pending"></asp:ListItem> </asp:DropDownList> </div> <div class="form-group"> <label> Received</label> <asp:DropDownList ID="ddlIR" runat="server"> <asp:ListItem Text="Yes" Value="True"></asp:ListItem> <asp:ListItem Text="No" Value="False"></asp:ListItem> </asp:DropDownList> </div> <div class="form-group"> <label> Approved</label> <asp:DropDownList ID="ddlIA" runat="server"> <asp:ListItem Text="Yes" Value="True"></asp:ListItem> <asp:ListItem Text="No" Value="False"></asp:ListItem> </asp:DropDownList> </div> <div class="form-group"> <label> Evaluated</label> <asp:DropDownList ID="ddlIE" runat="server"> <asp:ListItem Text="Yes" Value="True"></asp:ListItem> <asp:ListItem Text="No" Value="False"></asp:ListItem> </asp:DropDownList> </div> <div class="form-group"> <label> Processed</label> <asp:DropDownList ID="ddlIP" runat="server"> <asp:ListItem Text="Yes" Value="True"></asp:ListItem> <asp:ListItem Text="No" Value="False"></asp:ListItem> </asp:DropDownList> </div> </div> <!-- /.col-lg-6 (nested) --> </div> <asp:Button ID="btnCancel" runat="server" class="btn btn-default" Text="Cancel" PostBackUrl="~/Operations/DVO_History.aspx" formnovalidate /> <asp:Button ID="btnSubmit_Edit" runat="server" class="btn btn-success" Text="Submit Button" OnClick="btnSubmit_Edit_Click" /> <!-- /.row (nested) --> </div> </form> <!-- /.panel-body --> </div> <!-- /.panel --> </div> <!-- /.col-lg-12 --> </div> <!-- /.row --> </div> </asp:Content>
Edit_DVO.asx.cs
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; using System.Data; namespace OperationsDepartment.Operations { public partial class Edit_DVO : System.Web.UI.Page { SqlConnection con = new SqlConnection(Helper.GetCon()); protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["ID"] != null) // record no selected { int userID = 0; bool validDVO_ID = int.TryParse(Request.QueryString["ID"].ToString(), out userID); if (validDVO_ID) { if (!IsPostBack) { GetModel(); GetPaymentTerm(); GetInfo(userID); } } else Response.Redirect("DVO_History.aspx"); } else Response.Redirect("DVO_History.aspx"); //change this to main homepage if meron na } protected void btnSubmit_Edit_Click(object sender, EventArgs e) { con.Open(); SqlCommand com = new SqlCommand(); com.Connection = con; com.CommandText = "Update DVO SET LastName=@LastName,FirstName=@FirstName,DealerName=@DealerName, " + "Qty=@Qty,Model=@ProductID,QuotationRefNo=@QuotationRefNo,TotalAmount=@TotalAmount, " + "Term=@PaymentTermID,TargetDelivery=@TargetDelivery,Status=@Status, " + "IsReceived=@IsReceived,IsApproved=@IsApproved, IsEvaluated=@IsEvaluated, IsProcessed=@IsProcessed WHERE DVO_ID=@DVO_ID"; com.Parameters.AddWithValue("LastName", txtLN.Text); com.Parameters.AddWithValue("FirstName", txtFN.Text); com.Parameters.AddWithValue("DealerName", txtDN.Text); com.Parameters.AddWithValue("Qty", txtQ.Text); com.Parameters.AddWithValue("ProductID", ddlMod.SelectedValue); com.Parameters.AddWithValue("QuotationRefNo", txtQR.Text); com.Parameters.AddWithValue("TotalAmount", txtTA.Text); com.Parameters.AddWithValue("PaymentTermID", ddlPT.SelectedValue); com.Parameters.AddWithValue("TargetDelivery", txtTD.Text); com.Parameters.AddWithValue("Status", ddlStatus.SelectedValue); com.Parameters.AddWithValue("IsReceived", ddlIR.SelectedValue); com.Parameters.AddWithValue("IsApproved", ddlIA.SelectedValue); com.Parameters.AddWithValue("IsEvaluated", ddlIE.SelectedValue); com.Parameters.AddWithValue("IsProcessed", ddlIP.SelectedValue); com.Parameters.AddWithValue("DVO_ID", Request.QueryString["ID"].ToString()); com.ExecuteNonQuery(); con.Close(); Response.Redirect("DVO_History.aspx"); } void GetInfo(int ID) { con.Open(); SqlCommand com = new SqlCommand(); com.Connection = con; com.CommandText = "SELECT c.LastName, c.FirstName, dt.DealerName, " + "d.Qty, p.Model, d.QuotationRefNo, d.TotalAmount, pt.Term, d.TargetDelivery, d.Status " + "d.IsReceived, d.IsApproved, d.IsEvaluated, d.IsProcessed " + "FROM DVO d " + "INNER JOIN Dealer dt ON d.DealerID=dt.DealerID " + "INNER JOIN Customer c ON d.CustomerID=c.CustomerID " + "INNER JOIN Product p ON d.ProductID=p.ProductID " + "INNER JOIN PaymentTerm pt ON d.PaymentTermID=pt.PaymentTermID WHERE DVO_ID=@DVO_ID"; com.Parameters.AddWithValue("DVO_ID", ID); SqlDataReader dr = com.ExecuteReader(); if (dr.HasRows) //record existing { while (dr.Read()) { ddlMod.SelectedValue = dr["Model"].ToString(); ltID.Text = dr["DVO_ID"].ToString(); ddlStatus.SelectedValue = dr["Status"].ToString(); ddlPT.SelectedValue = dr["PaymentTerm"].ToString(); ddlIR.SelectedValue = dr["IsReceived"].ToString(); ddlIA.SelectedValue = dr["IsApproved"].ToString(); ddlIE.SelectedValue = dr["IsEvaluated"].ToString(); ddlIP.SelectedValue = dr["IsProcessed"].ToString(); txtFN.Text = dr["FirstName"].ToString(); txtLN.Text = dr["LastName"].ToString(); txtDN.Text = dr["DealerName"].ToString(); txtQ.Text = dr["Qty"].ToString(); txtQR.Text = dr["QuantityRefNo"].ToString(); txtTA.Text = dr["TotalAmount"].ToString(); txtTD.Text = dr["TargetDelivery"].ToString(); } con.Close(); } else // not existing { con.Close(); Response.Redirect("DVO_History.aspx"); } } void GetModel() { con.Open(); SqlCommand com = new SqlCommand(); com.Connection = con; com.CommandText = "SELECT ProductID, Model FROM Product"; SqlDataReader dr = com.ExecuteReader(); ddlMod.DataSource = dr; ddlMod.DataTextField = "Model"; ddlMod.DataValueField = "ProductID"; ddlMod.DataBind(); con.Close(); } void GetPaymentTerm() { con.Open(); SqlCommand com = new SqlCommand(); com.Connection = con; com.CommandText = "SELECT PaymentTermID, Term FROM PaymentTerm"; SqlDataReader dr = com.ExecuteReader(); ddlPT.DataSource = dr; ddlPT.DataTextField = "Term"; ddlPT.DataValueField = "PaymentTermID"; ddlPT.DataBind(); con.Close(); } } }
What I have tried:
I tried using the same sql command text at my SQL Server and it works. So I do not know where the problem is coming from. I searched the meaning of my problem and it says I'm getting a null object but I know i am not getting any null object.
A simple syntax error here:
"d.Qty, p.Model, d.QuotationRefNo, d.TotalAmount, pt.Term, d.TargetDelivery, d.Status " + "d.IsReceived, d.IsApproved, d.IsEvaluated, d.IsProcessed " +
You have no comma (,) afterd.Status
...
这篇关于'。'附近的语法不正确。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!