本文来源:网站建设-网站制作|网络营销专家慧云科技-抢滩登陆2009-7-16 15:30:10
//如果是name的话,表示用英文
if( colNameMode == "name" )
china = english;
int n1 = Squery[0].IndexOf( ‘[‘ );
int n2 = Squery[0].IndexOf( ‘]‘ );
if( n1<1 && n2<1 ) return null;
string value = Squery[0].Substring( n1 + 1, n2 - n1 - 1 );//除掉前后的[]
value = value.Trim();//出掉前后的空格
string text = "";
if( value != "" ) {
if( value == "*" ) //当传进来的字符串为*
{
Dbquery = "select " + china + " from " + tablename + " where";
}
//当传进来的字符串数值形式
else if( IsNumber( value ) ) {
Dbquery = "select " + china + " from " + tablename + " where sys_id= " + value + " and";
}
//当传进来的字符串为""或‘‘形式
else if( (text = IsString( value )) != "" ) {
string NameIndex = ColNod.GetAttr( "NameIndex" ); // xmlc.GetAttribute( xmlc.xmlRoot, "NameIndex" );
if( NameIndex == "" ) return null;
//XmlNode nodNam = xmlc.xmlRoot.SelectSingleNode( "//field[@name=‘" + NameIndex + "‘]" );
XmlDomNode nodNam = ColNod.GetNode( "fields/field[@name=‘" + NameIndex + "‘]" ); //.SelectSingleNode( "fields/field[@name=‘" + NameIndex + "‘]" );
string sNamCol = nodNam.GetAttr( "name" ); // xmlc.GetAttribute( nodNam, "name" );
Dbquery = "select " + china + " from " + tablename + " where " + sNamCol + " = ‘" + text + "‘ and";
}
//当传进来的字符串开始为@形式
else if( value.StartsWith( "@" ) ) {
string Stop = "";
string sWhere = "";
string temp = value.Substring( 1 );//出掉@
temp = temp.Replace( "&&", "&" );
string[] sarray = temp.Split( ‘&‘ );
for( int i = 0; i < sarray.Length; i++ ) {
sarray[i] = sarray[i].Trim();
if( IsTopValue( sarray[i] ) ) {
Stop = sarray[i];
} else {
sWhere += sarray[i] + " and ";
}
}
Dbquery = "select " + Stop + " " + china + " from " + tablename + " where " + sWhere + " ";
}
}