[英]SqlException: Ambiguous column name
运行以下代码时出现此错误:
列名称“ AppointmentID”不明确。
异常详细信息:System.Data.SqlClient.SqlException:列名“ AppointmentID”不明确。源错误:
第68行:adapter.Fill(tbl);
这是导致错误的函数:
public Transaction Payment
{
get
{
return Db.Transaction.FindWhere("[AppointmentID]=@0 AND [Type]='paym'", SqlDb.Params(this.ID));
}
}
交易结构:
public partial class Transaction : SqlRow
{
public int CID { get; set; }
public DateTime Date { get; set; }
public string Type { get; set; }
public string Description { get; set; }
public decimal Amount { get; set; }
public decimal Balance { get; set; }
public int? AppointmentID { get; set; }
public int LocationID { get; set; }
}
可能是什么原因?
例外说明了一切。 不同的表中有不止一列名为AppointmentID
列。 您可以在查询中使用表别名或使用[TableName].[AppointmentID]
。
您应该共享您的SQL代码以获得更具体的帮助。
查看您的查询。 多个表中的AppointmentID列。
您必须使用表的别名看起来有
CREATE TABLE Table1
(
ID int,
AppointmentID int,
FirstName varchar(255)
);
CREATE TABLE Table2
(
ID int,
AppointmentID int,
LastName varchar(255)
);
Select A.FirstName , A.AppointmentID , B.LastName , B.AppointmentID
From Table1 A, Table2 B
Where A.AppointmentID = B.AppointmentID ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.