如何从SQL逐行获取并生成String

时间:2013-09-07 08:14:53

标签: c# winforms sql-server-ce tooltip

我有一个SQL Server CE数据库,其中包含以下desc:

Key TypeName    nvarchar(230)   460 No  No
    ID_FK   int 4   No  No
    Type    nvarchar(150)   300 No  No
    Description nvarchar(1000)  2000    No  Yes
    Syntax  nvarchar(2500)  5000    No  Yes
    BaseType    nvarchar(500)   1000    No  Yes

使用:

tablename: tb_CSType
 SqlCeConnection con;
 SqlCeDataAdapter da = new SqlCeDataAdapter();
 DataSet dsType = new DataSet();
 SqlCeCommand selectCommand;

我得到了一个具有以下语法的工具提示:

  

KeywordTipTexts.Add(“”,“”); //组成字符串

我希望成为:

  

KeywordTipTexts.Add(TypeName,Syntax);

现在问题如何根据行获取表的数据并将其设为toString。

像这样:

KeywordTipTexts.Add(TypeName, Syntax);

但必须转换为字符串。

希望你能帮助我。提前做好准备。更多力量! //请告诉我,如果我在Q版本中无法理解的内容,请尝试更新。

2 个答案:

答案 0 :(得分:0)

使用SqlCeDataReader类读取结果并使用Convert.ToString()将其转换为字符串(duh!:p)。

SqlCeDataReader reader = command.ExecuteReader();
String typeName;
String syntax;
if(reader.Read()) {
    typeName = Convert.IsDBNull(reader["typeName"]) ? "" : Convert.ToString(reader["typeName "]);
    syntax = Convert.IsDBNull(reader["syntax"]) ? "" : Convert.ToString(reader["syntax "]);
}
KeywordTipTexts.Add(typeName, syntax);
reader.Close();

像这样......

答案 1 :(得分:0)

将此问题用于解决您的问题:

string conStr = @"Data Source=PathAndNameOFSdfFile.sdf";
SqlCeDataReader sqldrAllData;
SqlCeConnection sqlCon = new SqlCeConnection(conStr);

SqlCeCommand sqlCmd = new SqlCeCommand("Select TypeName, Syntax From tb_CsType", sqlCon);
sqlCon.Open();
sqldrAllData = sqlCmd.ExecuteReader();

while(sqldrAllData.Read())
{
    KeywordTipTexts.Add(sqldrAllData["TypeName"].ToString(), sqldrAllData["Syntax"].ToString());
}

sqlCon.Close();