C# SqlException:列名称不明确
运行以下代码时,我遇到此错误: 列名称“AppointmentID”不明确。C# SqlException:列名称不明确,c#,sql,sql-server,C#,Sql,Sql Server,运行以下代码时,我遇到此错误: 列名称“AppointmentID”不明确。 异常详细信息:System.Data.SqlClient.SqlException:不明确的列名“AppointmentID” 源错误: 第68行:适配器填充(tbl) 这是导致错误的函数: public Transaction Payment { get { return Db.Transaction.FindWhere("[AppointmentID]=@0 AND [Type]='
异常详细信息:System.Data.SqlClient.SqlException:不明确的列名“AppointmentID” 源错误:
第68行:适配器填充(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代码以获得更具体的帮助。查看您的查询。多个表中的列AppointId 必须使用表别名 例如:
我们需要查看您的表结构(事务)。AppointmentId或Type在多个表中使用(假设存在联接)。完全限定列名
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 ;