访问选择查询
Posted
技术标签:
【中文标题】访问选择查询【英文标题】:Access select Query 【发布时间】:2014-07-17 12:05:07 【问题描述】:我正在尝试将数据从 Access 数据库导入数据表,我想在网格视图中显示。
我使用了两个文本框,一个带有起始值,第二个带有结束值。当我在文本框中输入值时,它会显示填充数据的网格视图。这行得通,但我的问题是 gridview 向我显示来自整个访问表的数据,而不仅仅是我想要的分层值和结束值之间的数据。
protected DataTable DataLoad()
string queryString = "SELECT SNR,.... ,......,......,.......,...... FROM Mytable Where SNR Between '" + tb_SNRFrom.Text + "'And '" + tb_SNRTil.Text + "'";
try
OleDbCommand command1 = new OleDbCommand(queryString, connection);
OleDbDataAdapter da = new OleDbDataAdapter(command1);
DataSet dataset = new DataSet();
da.Fill(dataset);
table = dataset.Tables[0];
catch (OleDbException exp)
Response.Write("Database Error:" + exp.Message.ToString());
connection.Close();
return table;
【问题讨论】:
您应该始终使用parameterized queries。这种字符串连接对SQL Injection 攻击开放。 @Soner 关于使用参数是正确的。他们甚至可以解决您的日期范围问题。 生病尝试thanx为你的答案! 【参考方案1】:既然知道上限和下限,为什么不使用SELECT SNR,.... ,......,......,.......,...... FROM Mytable Where SNR >= @SmallValue And SNR <= @LargeValue;
..
【讨论】:
程序是一个搜索掩码。我无法修复下限和上限 - 永远只限一次。 largevalue 和 smallvalue 不是固定值。它们是要从两个文本框传递的参数。我的意思是从下限和上限说的是,您有一个用于上限的文本框和一个用于下限的文本框 信噪比的数据类型是什么?也可以尝试在Access中执行绝对值查询,检查返回的数据是否被过滤。 那列里面有哪些数据呢?提供一些例子。 例如,我在文本框中输入了值:197、222,我得到了 snr=197....... …………2154! 2154是表的结束SRN以上是关于访问选择查询的主要内容,如果未能解决你的问题,请参考以下文章