c# - 使用 reader 从表中查询数据
问题描述
目前我尝试检索表寄存器的数据,但它没有检索任何东西,知道吗?我不知道我的脚本是错误的还是我遗漏了什么。不要捕获任何东西。我也尝试使用此查询,但我不知道 Where is the correct form?SqlCommand comm = new SqlCommand("select clase, opacion from Clase_Documento where codigoafip = '"+ codafip +"'", conn);
Field codafip = (Field)doc.Fields["ZIMCodigoAFIP"];
Field clasedoc = (Field)doc.Fields["ZIMBlart"];
Field operacion = (Field)doc.Fields["ZIMOperacion"];
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "Data Source=localhost\\DOKUSTAR;Database=RdaDB10;User ID=bcc;Password=******;Trusted_Connection=Yes";
conn.Open();
SqlDataReader dr;
SqlCommand comm = new SqlCommand("select * from Clase_Documento", conn);
dr = comm.ExecuteReader();
while(dr.Read())
{
if (codafip.Value == dr.GetString(4))
{
string clasedoc2 = dr.GetString(1);
string operacion2 = dr.GetString(5);
clasedoc.Value = clasedoc2; //here put the data of the table in its respective field
operacion.Value = operacion2; //here put the data of the table in its respective field
}
}
只是为了澄清,mi表就是这个,我要检索的字段是“clase”和“operacion”,具体取决于参数codigoafip
解决方案
假设您的字段名称是 claseDocField、operacionField 和 codafipField(以及所有字符串):
using (SqlConnection conn = new SqlConnection(@"server=.\DOKUSTAR;Database=RdaDB10;Trusted_Connection=Yes"))
using (SqlCommand comm = new SqlCommand(@"select top(1) clasedocField, operacionField
from Clase_Documento
where codafipField = @codafip", conn))
{
comm.Parameters.Add("@codafip", SqlDbType.VarChar).Value = codafip.Value;
conn.Open();
SqlDataReader dr = comm.ExecuteReader();
if(dr.Read())
{
clasedoc.Value = (string)dr["claseDocField"];
operacion.Value = (string)dr["operacionField"];
}
}
编辑:
using (SqlConnection conn = new SqlConnection(@"server=.\DOKUSTAR;Database=RdaDB10;Trusted_Connection=Yes"))
using (SqlCommand comm = new SqlCommand(@"select top(1) clase, operacion
from Clase_Documento
where codigoafip = @codafip", conn))
{
comm.Parameters.Add("@codafip", SqlDbType.VarChar).Value = codafip
;
conn.Open();
SqlDataReader dr = comm.ExecuteReader();
if(dr.Read())
{
clasedoc.Value = (string)dr["clase"];
operacion.Value = (string)dr["operacion"];
}
else
{
clasedoc.Value = "Not found";
}
}
推荐阅读
- agile - 小型 DevOps 团队的最佳敏捷方法
- python - 无法在 Windows 上导入 rest_framework 但可以在 Ubuntu 上导入?
- tensorflow - 关于时间序列预测的一般问题
- python - 为什么 Beautiful soup 找不到我要找的 html 元素?
- python - 为什么发生参数错误时不使用修饰函数的名称?
- rust - 了解 Rust 堆栈分配
- python - opencv 和 pyqt 使用的两组 Qt 二进制文件
- python - 如何在 Python 中解析来自 YAHOO.Finance.SymbolSuggest.ssCallback 的结果
- android - 我正在使用 android studio 4.0 并面临错误消息无法加载包装器属性
- react-native - 找不到变量 Connect ,堆栈 React native