Chr*_*ris 13 c# sql asp.net select
在我当前的项目中,为了获得单个值(从表中选择id = val的列),以前的程序员通过使用数据行,数据表和sqldatadapter(当然还有sqlconnection)来获取该值.
是否有更简单的方法来进行简单的选择查询?在PHP中,我可以使用mysql_query然后mysql_result我就完成了.
如果我能这样做会很好:
SqlConnection conSql = new SqlConnection(ConnStr);
SomeSqlClass obj = new SomeSqlClass(sql_string, conSql);
conSql.Close();
return obj[0];
Run Code Online (Sandbox Code Playgroud)
谢谢你的任何提示.
wom*_*omp 38
你可以跳过DataReader和DataAdapter并调用ExecuteScalar()上的SQL命令.
using (SqlConnection conn = new SqlConnection(connString))
{
SqlCommand cmd = new SqlCommand("SELECT * FROM whatever
WHERE id = 5", conn);
try
{
conn.Open();
newID = (int)cmd.ExecuteScalar();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
Run Code Online (Sandbox Code Playgroud)
小智 9
你可能正在寻找SqlCommand和SqlDataReader
Dictionary<int, string> users = new Dictionary<int, string>();
using(SqlConnection connection = new SqlConnection("Your connection string"))
{
string query = "SELECT UserId, UserName FROM Users";
SqlCommand command = new SqlCommand(query, connection);
connection.Open();
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
users.Add(reader.GetInt32(0), reader.GetString(1));
}
connection.Close();
}
Run Code Online (Sandbox Code Playgroud)
小智 5
实际上,有一个方法SqlCommand.ExecuteScalar()只返回返回结果的第一行中的第一个字段.只为你.
.NET Framework类库SqlCommand .. ::.ExecuteScalar方法
执行查询,并返回查询返回的结果集中第一行的第一列.其他列或行将被忽略.
| 归档时间: |
|
| 查看次数: |
86249 次 |
| 最近记录: |