Jaro Winkler SQL查询相关地址
本文关键字:地址 查询 Winkler SQL Jaro | 更新日期: 2023-09-27 18:19:38
我想向数据列表返回相关地址的列表,但在运行此代码时出错。非常感谢您的帮助。
我得到的错误是"无效列名vadress1"
C#
vaddress1 = txtchangeaddress1.Text;
string sConnectionString = System.Configuration.ConfigurationManager.AppSettings["sCon5"];
Connection = new OleDbConnection(sConnectionString);
Connection.Open();
SqlConnection con2 = new SqlConnection(connectionString);
String strSQL;
strSQL = "select distinct address1, dbo.fn_calcJW(vaddress1, address1) AS Expr1 FROM address ORDER BY Expr1 DESC";
OleDbDataReader dtReader;
objCmd = new OleDbCommand(strSQL, Connection);
dtReader = objCmd.ExecuteReader();
//*** BindData to DataList ***//
DataList2.DataSource = dtReader;
DataList2.DataBind();
ASP
<div id="addressMatch">
<center>
<h2> Do one of these addresses fit?</h2>
</center>
<asp:DataList ID="DataList2" runat="server">
<ItemTemplate>
<div style="margin-left: 0px; ">
<table width="100%" >
<tr>
<td align="left" >
<asp:TextBox id="txtAddressMatch" width="240px" runat="server" Font-Underline="True" BorderStyle="None" ReadOnly="true" CssClass="txtborder" text='<%# DataBinder.Eval(Container.DataItem, "address1") %>'></asp:TextBox>
</td>
</tr>
</table>
</div>
</ItemTemplate>
</asp:DataList>
</div>
我想你会在这里得到错误:
dtReader = objCmd.ExecuteReader();
而且,我想这个错误是关于"vadress1"的。这是因为您需要将"vadress1"作为参数添加到SQL语句中。类似这样的东西:
strSQL = "select distinct address1, dbo.fn_calcJW(@vaddress1, address1) AS Expr1 FROM address ORDER BY Expr1 DESC";
OleDbDataReader dtReader;
objCmd = new OleDbCommand(strSQL, Connection);
objCmd.Parameters.Add("@vaddress1", SqlDbType.VarChar);
objCmd.Parameters["@vaddress1"].Value = vaddress1;
代码中错误的其他可能原因(这不是详尽的,但因为你没有提到任何具体的原因):
txtchangeaddress1.Text
为空- 在
System.Configuration.ConfigurationManager.AppSettings
集合中找不到"sCon5" - 这条线上有许多可能的原因:
Connection.Open();
- 您的连接字符串格式不正确
- 您的SQL Server不可用
- 您没有访问SQL Server所需的权限
- 存储过程"dbo.fn_calcJW"中的错误在
dtReader = objCmd.ExecuteReader();
行引发- 您实际上并没有向SQL语句添加参数。这是最有可能出现的问题,因为它会打乱对存储过程的调用
dtReader = objCmd.ExecuteReader();
没有返回任何结果,因此在稍后的DataBind()
调用过程中抛出错误
严肃地说,请在这里的帖子中包含比"运行此代码时出错"更多的信息。