如何使用access数据库在c#中显示行值
本文关键字:显示 何使用 access 数据库 | 更新日期: 2023-09-27 18:26:43
我正在尝试制作一个程序,向用户显示随机的英语单词(取自访问数据库),并要求他编写单词的希伯来语防御。我设法用ExcelVBA中的"单元格(X,Y)"很容易地编程。。。但现在,当我在c#和access中尝试这样做时,我有点迷失了方向。我设法让读者工作——问题是——如何告诉它只读我项目中的特定行?例如,它得到一个随机数5,然后在第5行显示英语单词的值,并期望收到第5行的希伯来语单词作为答案。
这就是我目前所取得的成就:
private void button1_Click(对象发送方,EventArgs e){string conStr=@"提供程序=Microsoft.ACE.OLEDB.12.0;数据源=E:''Words''WordsDatabase.accdb";string mySelect="选择英语,来自学习";OleDbConnection dbConnect=新的OleDbConnection[();dbConnect.ConnectionString=conStr;dbConnect.Open();OleDbCommand dbCmd=新的OleDbCommand(mySelect,dbConnect);OleDbDataReader dbReader=dbCmd.ExecuteRead();
while (dbReader.Read())
{
textBox1.Text += dbReader.GetValue(0).ToString() + "'r'n";
textBox2.Text += dbReader.GetValue(1).ToString() + "'r'n";
}
}
非常感谢,巴拉克。
问题实际上与SQL有关。将mySelect更改为:
SELECT TOP 1 english, hebrew FROM study ORDER BY NEWID()
MS Access等效查询为:
SELECT TOP X english, hebrew FROM study ORDER BY Rnd(-10000000*TimeValue(Now())*[id])
何处
- [id]是研究的数字(很可能是自动编号)主键字段
- X是您希望返回的行数
信用