public static int ExecuteSql(string SQLString, params SqlParameter[] cmdParms)
{
using (SqlConnection connection = new SqlConnection(ConfigurationSettings.AppSettings["connstr"]))
{
using (SqlCommand cmd = new SqlCommand())
{
try
{
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
int Row = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return Row; }
catch (System.Data.SqlClient.SqlException E)
{
int reg=3;
return reg;
}
}
}
}
==============================================
private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, string cmdText, SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = CommandType.Text;//cmdType;
if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
已经确保string SQLString 和params SqlParameter[] cmdParms中有数据了,
可是结果还是返回的是 -1
大家帮下忙吧..
{
using (SqlConnection connection = new SqlConnection(ConfigurationSettings.AppSettings["connstr"]))
{
using (SqlCommand cmd = new SqlCommand())
{
try
{
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
int Row = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return Row; }
catch (System.Data.SqlClient.SqlException E)
{
int reg=3;
return reg;
}
}
}
}
==============================================
private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, string cmdText, SqlParameter[] cmdParms)
{
if (conn.State != ConnectionState.Open)
conn.Open();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = cmdText;
if (trans != null)
cmd.Transaction = trans;
cmd.CommandType = CommandType.Text;//cmdType;
if (cmdParms != null)
{
foreach (SqlParameter parm in cmdParms)
cmd.Parameters.Add(parm);
}
}
已经确保string SQLString 和params SqlParameter[] cmdParms中有数据了,
可是结果还是返回的是 -1
大家帮下忙吧..
應該是一行也沒有執行,再好好檢查一下。
{
测试了,传递到这里变量都正常
PrepareCommand(cmd, connection, null, SQLString, cmdParms);
}
-------------------------
我已经检查了 N遍了, 就是找不到原因啊 。。
你先在查询分析器里面测试一下
能不能返回结果
public static int Check(string UserName, string UserPassword)
{
StringBuilder SQLString = new StringBuilder();
SQLString.Append("SELECT * from lf_admin where username=@username and userpass=@userpwd"); /* 用于添加数据的方法 StringBuilder strSql = new StringBuilder();
strSql.Append("insert into FLinks(");
strSql.Append("FLinkID,FLinkName,FLinkType,FLinkUrl,FLinkImg,Res,Status)");
strSql.Append(" values (");
strSql.Append("@FLinkID,@FLinkName,@FLinkType,@FLinkUrl,@FLinkImg,@Res,@Status)");
*/
SqlParameter[] cmdParms = {
new SqlParameter("@username",SqlDbType.NVarChar,20),
new SqlParameter("@userpwd",SqlDbType.NVarChar,20)};
cmdParms[0].Value = UserName;
cmdParms[1].Value = UserPassword;
return ExecuteSql(SQLString.ToString(), cmdParms); }SELECT * from lf_admin where username=@username and userpass=@userpwd
这句也试过了啊.
大家帮帮忙吧