public static DataTable SearchFor(string strKey)
{
objConn.Open();
string[] keyStrings;
string tempString = " ";
char[] temp = tempString.ToCharArray();
string enterTemp = strKey;
keyStrings = enterTemp.Split(temp);
//循环读取关键字并输出
DataTable objDataTable = null;
foreach (string keyString in keyStrings)
{
string strComm = "SELECT ...";
SqlDataAdapter objComm = new SqlDataAdapter(strComm, objConn);
DataSet objDS = new DataSet();
objComm.Fill(objDS, "article"); if (objDS.Tables["article"].Rows.Count > 0)
{
objDataTable = objDS.Tables["article"];
}.
}
return objDataTable;
objConn.Close();
}
----------------------------------------------------
现在搜到的结果只能是包含最后一个关键字的数据,
怎么才能对返回的数据做个累加,好能把包含全部关键字的数据都列出来呢?
{
objConn.Open();
string[] keyStrings;
string tempString = " ";
char[] temp = tempString.ToCharArray();
string enterTemp = strKey;
keyStrings = enterTemp.Split(temp);
//循环读取关键字并输出
DataTable objDataTable = null;
foreach (string keyString in keyStrings)
{
string strComm = "SELECT ...";
SqlDataAdapter objComm = new SqlDataAdapter(strComm, objConn);
DataSet objDS = new DataSet();
objComm.Fill(objDS, "article"); if (objDS.Tables["article"].Rows.Count > 0)
{
objDataTable = objDS.Tables["article"];
}.
}
return objDataTable;
objConn.Close();
}
----------------------------------------------------
现在搜到的结果只能是包含最后一个关键字的数据,
怎么才能对返回的数据做个累加,好能把包含全部关键字的数据都列出来呢?
然后在SQL语句中IN一下就好了
string[] ID = new string[a.Length];
if (a.Length > 0)
{
for (int i = 0; i < a.Length; i++)
{
ID[i] = a[i].Substring(0, 4);
}
string id= "";
for (int i = 0; i < a.Length; i++)
{
id += ID[i] + ',';
}
在写SQL的时候 ---- WHERE id IN ("+id+")
WHERE id IN ("+id.TrimEnd(',')+")
----------------------------
这是在干吗?
直接
string[] ID = new string[a.Length];
string id= "";
if (a.Length > 0)
{
for (int i = 0; i < a.Length; i++)
{
id += ID[i] + ',';
}
}
这样就可以
因为我之前的数组是多维,需要拆分,所以用substring
{
for (int i = 0; i < a.Length; i++)
{
ID[i] = a[i];
}
直接替换成a[i]就成了
关键字枚举:"text1","text2",...
大致意思是 列名='text1' or 列名="text2" ...
数据类型 ntext 和 varchar 在 equal to 运算符中不兼容查询列有ntext型,是因为要存储足够长度的字符.这样报错只能改 数据类型了吗?
like是模糊查询,后面接的是匹配的字符串.如果用like接 in(string)那是什么也不会查得出来的