问题描述
publicDataSetExecuteQuery(stringsql,stringtname){stringmystr;mystr=ConfigurationManager.AppSettings["myconnstring"];SqlConnectionmyconn=newSqlConnection();myconn.ConnectionString=mystr;myconn.Open();SqlDataAdaptermyda=newSqlDataAdapter(sql,myconn);DataSetmyds=newDataSet();myda.Fill(myds,tname);myconn.Close();returnmyds;}
EexcuteQuery()函数编写路上,那么我如何才能调用并执行SELECT操作呢?比如说我要查询一个course表中的课程总数。
解决方案
解决方案二:
没看懂问什么 ----------------------------------签----------名----------栏----------------------------------
解决方案三:
你写的,已经可以了.
解决方案四:
引用1楼naonaoye的回复:
没看懂问什么stringmysql;stringmycmd;mycmd="SELECTtnameFROMteacherWHEREtno='"+DropDownList2.SelectedValue+"'";mydb.ExecuteQuery(mycmd,"teacher");mysql="UPDATEcourseSETtno='"+DropDownList1.SelectedValue+"',tname='"+mycmd+"'WHEREcno='"+DropDownList1.SelectedValue+"'";mydb.ExecuteNonQuery(mysql);Response.Write("<scriptlanguage=javascript>alert('添加成功!')</script>");我想知道的是我在这里调用ExecuteQuery()具体该如何操作。----------------------------------签----------名----------栏----------------------------------上班,周末,上班,周末
解决方案五:
实例化ExecuteQuery()所在的类,然后通过实例调用,假设该方法在X类下:Xx=newX();x.ExecuteQuery(...);
解决方案六:
首先需要确定你这个函数的位置,实在当前类还是在其他类,如果在同一个类里面,直接调用DataSetds=ExecuteQuery(sql,"");如果在另一个类,那需要先实例化一个该类的对象,再用调用方法的方式调用函数DataSetds=对象名.ExecuteQuery(sql,"");你那样直接从一个文本对象去调用这个方法哪里行
解决方案七:
引用5楼wzs_xyz的回复:
首先需要确定你这个函数的位置,实在当前类还是在其他类,如果在同一个类里面,直接调用DataSetds=ExecuteQuery(sql,"");如果在另一个类,那需要先实例化一个该类的对象,再用调用方法的方式调用函数DataSetds=对象名.ExecuteQuery(sql,"");你那样直接从一个文本对象去调用这个方法哪里行
额,我的言下之意是我已经实例过了~~ExecuteQuery(sql,"");其中第二个参数是干嘛用的?
解决方案八:
直接写好sql语句然后利用这个来返回一个DateSet啊
解决方案九:
给你一个经典的DBHelperusingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Data.SqlClient;usingSystem.Data;usingSystem.Reflection;usingSystem.Configuration;namespaceWeb.SqlServerDAL{publicclassSqlHelper{#region变量///<summary>///数据库连接对象///</summary>privatestaticSqlConnection_con=null;publicstaticstringconstr="数据库连接地址";#endregion#region属性///<summary>///获取或设置数据库连接对象///</summary>publicstaticSqlConnectionCon{get{if(SqlHelper._con==null){SqlHelper._con=newSqlConnection();}if(SqlHelper._con.ConnectionString==""){SqlHelper._con.ConnectionString=SqlHelper.constr;}returnSqlHelper._con;}set{SqlHelper._con=value;}}#endregion#region方法#region执行返回一行一列的数据库操作///<summary>///执行返回一行一列的数据库操作///</summary>///<paramname="commandText">SQL语句或存储过程名</param>///<paramname="commandType">SQL命令类型</param>///<paramname="param">SQL命令参数数组</param>///<returns>第一行第一列的记录</returns>publicstaticintExecuteScalar(stringcommandText,CommandTypecommandType,paramsSqlParameter[]param){intcount=0;using(SqlHelper.Con){using(SqlCommandcmd=newSqlCommand(commandText,SqlHelper.Con)){try{cmd.CommandType=commandType;cmd.Parameters.AddRange(param);SqlHelper.Con.Open();count=Convert.ToInt32(cmd.ExecuteScalar());}catch(Exceptionex){throwex;}}}returncount;}#endregion#region执行不查询的数据库操作///<summary>///执行不查询的数据库操作///</summary>///<paramname="commandText">SQL语句或存储过程名</param>///<paramname="commandType">SQL命令类型</param>///<paramname="param">SQL命令参数数组</param>///<returns>受影响的行数</returns>publicstaticintExecuteNonQuery(stringcommandText,CommandTypecommandType,paramsSqlParameter[]param){intresult=0;using(SqlHelper.Con){using(SqlCommandcmd=newSqlCommand(commandText,SqlHelper.Con)){try{cmd.CommandType=commandType;cmd.Parameters.AddRange(param);SqlHelper.Con.Open();result=cmd.ExecuteNonQuery();}catch(Exceptionex){throwex;}}}returnresult;}#endregion#region执行返回一条记录的泛型对象///<summary>///执行返回一条记录的泛型对象///</summary>///<typeparamname="T">泛型类型</typeparam>///<paramname="reader">只进只读对象</param>///<returns>泛型对象</returns>privatestaticTExecuteDataReader<T>(IDataReaderreader){Tobj=default(T);try{Typetype=typeof(T);obj=(T)Activator.CreateInstance(type);//从当前程序集里面通过反射的方式创建指定类型的对象//obj=(T)Assembly.Load(SqlHelper._assemblyName).CreateInstance(SqlHelper._assemblyName+"."+type.Name);//从另一个程序集里面通过反射的方式创建指定类型的对象PropertyInfo[]propertyInfos=type.GetProperties();//获取指定类型里面的所有属性foreach(PropertyInfopropertyInfoinpropertyInfos){for(inti=0;i<reader.FieldCount;i++){stringfieldName=reader.GetName(i);if(fieldName.ToLower()==propertyInfo.Name.ToLower()){objectval=reader[propertyInfo.Name];//读取表中某一条记录里面的某一列信息if(val!=null&&val!=DBNull.Value)propertyInfo.SetValue(obj,val,null);//给对象的某一个属性赋值break;}}}}catch(Exceptionex){throwex;}returnobj;}#endregion#region执行返回一条记录的泛型对象///<summary>///执行返回一条记录的泛型对象///</summary>///<typeparamname="T">泛型类型</typeparam>///<paramname="commandText">SQL语句或存储过程名</param>///<paramname="commandType">SQL命令类型</param>///<paramname="param">SQL命令参数数组</param>///<returns>实体对象</returns>publicstaticTExecuteEntity<T>(stringcommandText,CommandTypecommandType,paramsSqlParameter[]param){Tobj=default(T);using(SqlHelper.Con){using(SqlCommandcmd=newSqlCommand(commandText,SqlHelper.Con)){cmd.CommandType=commandType;cmd.Parameters.AddRange(param);SqlHelper.Con.Open();SqlDataReaderreader=cmd.ExecuteReader(CommandBehavior.CloseConnection);while(reader.Read()){obj=SqlHelper.ExecuteDataReader<T>(reader);}}}returnobj;}#endregion#region执行返回多条记录的泛型集合对象///<summary>///执行返回多条记录的泛型集合对象///</summary>///<typeparamname="T">泛型类型</typeparam>///<paramname="commandText">SQL语句或存储过程名</param>///<paramname="commandType">SQL命令类型</param>///<paramname="param">SQL命令参数数组</param>///<returns>泛型集合对象</returns>publicstaticList<T>ExecuteList<T>(stringcommandText,CommandTypecommandType,paramsSqlParameter[]param){List<T>list=newList<T>();using(SqlHelper.Con){using(SqlCommandcmd=newSqlCommand(commandText,SqlHelper.Con)){try{cmd.CommandType=commandType;cmd.Parameters.AddRange(param);SqlHelper.Con.Open();SqlDataReaderreader=cmd.ExecuteReader(CommandBehavior.CloseConnection);while(reader.Read()){Tobj=SqlHelper.ExecuteDataReader<T>(reader);list.Add(obj);}}catch(Exceptionex){throwex;}}}returnlist;}#endregion#endregion}}
解决方案十:
这个一般够用了用的都是List<T>,但是你要用DataTable的话就不行~再加一个方法
解决方案十一:
明明有参数传个sql和数据库表名过去不就完了嘛
解决方案十二:
已经有SQL参数了,传个SQL语句不就实现了?
解决方案十三:
引用3楼tao_sun的回复:
[Quote=引用1楼naonaoye的回复:]没看懂问什么C#codestringmysql;stringmycmd;mycmd="SELECTtnameFROMteacherWHEREtno='"+DropDownList2.SelectedValue+"'";m……
+1