2012-03-07 44 views
4

我想知道如何從數據庫sql中獲取單元格的值? 例 表名:密碼 列:登錄 - 如何從數據庫單元格中獲取值到字符串中?

Name | Birthday 
Ina  19 

string name = "Select Name from login"; 
string connection= "connection string path"; 
SqlConnection connect = new SqlConnection(connection); 
SqlCommand command = new sqlCommand(name,connect); 
string get = command; 

,但我敢肯定,這是錯誤的:(

我想知道如何獲得價值

感謝,

+0

看看教程這裏-http://msdn.microsoft.com/en-us/library/ms254937%28v=vs.80%29.aspx,有不同的方法來獲得基於數據需求,你需要單行還是多行還是單值? – 2012-03-07 16:47:09

+0

只有1個值,有2個單元格,我想從第二個獲得 – 2012-03-07 16:51:00

+0

爲什麼你將所有的問題都更新爲「test test test ...?」?這使得搜索相同解決方案的其他人無法找到它們。 – zimdanen 2012-05-03 18:45:15

回答

3

你想command.ExecuteScalar()

string get = command.ExecuteScalar().ToString(); 

您可能需要小心從命令獲得空回的可能性。

+0

是的一切工作,你是什麼意思空回來?我需要做什麼? – 2012-03-07 17:03:36

+1

如果你的命令是'SELECT Name from LoginTable where userID = 123',但沒有用戶存在ID爲123,那麼select將返回一個空結果集,我認爲'ExecuteScalar()'將返回一個空值。這當然意味着轉換爲字符串將失敗。這提醒我,你只能得到一塊數據(結果集第一行的第一個單元格),所以你應該確保你的查詢只能返回一塊數據。如果沒有where子句,結果可能無法確定(尤其是沒有訂單)。 – Chris 2012-03-07 17:21:33

+0

隨時提供您認爲有用的答案(即點擊評分上方的向上箭頭)。它讓我們開心,並且給予我們更多的快樂感受,而不僅僅是幫助。 :) – Chris 2012-03-07 17:22:13

1

你可能需要,如果有該表中多行添加參數。

string nameval = string.empty; 
string name = "Select Name from login"; 
string connection= "connection string path"; 
SqlConnection connect = new SqlConnection(connection); 
SqlCommand command = new sqlCommand(name,connect); 
using(connect) 
{ 
    var data = command.ExecuteScalar(); 
    if(data!=null) {nameval = data.ToString();} 
} 
相關問題