这是我的选择
using (SqlConnection con = new SqlConnection(dc.Con))
{
SqlDataAdapter da = new SqlDataAdapter(
"Select DateOfBirth FROM Patients WHERE HealthNumber='" + cmbHealthNumber.Text+ "'", con);
我如何着手计算客户更改我的上述代码的年龄
我试过了,但我从来没有解决过这个问题......
谢谢你帮助我!
最佳答案
如果您只需要检索单个DateTime
,为什么不使用:
string sqlStmt = "SELECT DateOfBirth FROM dbo.Patients WHERE HealthNumber = @No";
using (SqlConnection con = new SqlConnection(dc.Con))
using (SqlCommand cmd = new SqlCommand(sqlStmt, con))
{
cmd.Parameters.Add("@No", SqlDbType.VarChar, 20).Value = cmbHealthNumber.Text.Trim();
con.Open();
var result = cmd.ExecuteScalar();
DateTime dateOfBirth = Convert.ToDateTime(result);
con.Close();
}
真的没有必要为了单个值而经历所有 SqlDataAdapter
和 DataTable
或 DataSet
的麻烦.. ...
此外:始终使用参数化查询! - 无异常(exception)。防止 SQL 注入(inject) - 你绝对不希望这样!
关于c# - 使用带有 sql 查询的 ado.net 时计算年龄?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7984469/