这是我的存储过程
CREATE procedure dbo.Insert_ExamRecord
@Exame_Id varchar(50),
@Exame_Name varchar(50),
@Sex varchar (50),
@Pid_No varchar (50),
@Exam_Catg varchar (50),
@CarName varchar (50),
@CarClass varchar (50),
@ClinentIndex int ,
@EcamCount int ,
@ExamPlace varchar (50),
@Inspector varchar (50) ,
@Exam_Book_DT varchar (30),
@RecordState int,
@Grade1 int,
@Company varchar (50)AS
if not exists(select * from ExamRecord where EXAMID_NO=@Exame_Id and ID=@Pid_No)
insert into EXAMRECORD (ExamID,StudentName,StudentSex,ID,Examclass,CarName,Carcalss,clientIndex,ExamNumber,Examplace,Inspetor,Registertime,RecordStat,Grade1,company)
values(@Exame_Id,
@Exame_Name ,
@Sex ,
@Pid_No ,
@Exam_Catg ,
@CarName ,
@CarClass ,
@ClinentIndex ,
@EcamCount ,
@ExamPlace ,
@Inspector ,
@Exam_Book_DT,
@RecordState ,
@Grade1 ,
@Company
)
else
update EXAMRECORD
set
ExamID=@Exame_Id ,
StudentName = @Exame_Name ,
StudentSex=@Sex ,
ID= @Pid_No ,
Examclass= @Exam_Catg ,
CarName= @CarName ,
Carcalss@=CarClass ,
clientIndex= @ClinentIndex ,
ExamNumber= @EcamCount ,
Examplace =@ExamPlace ,
Inspetor= @Inspector ,
Registertime= @Exam_Book_DT,
RecordStat= @RecordState ,
Grade1= @Grade1 ,
company= @Company
where EXAMID_NO=@Exame_Id and ID=@Pid_No
GO
这是数据层代码
public static void InsertExaminee(string ExamId,string studentname,string sex,string id,string examclass,string carname
,string carclass,int index,int examnumber,string examplac,string inspetor,string registertime,int recordstate,int grade1
,string company) {
string CONN_STRING = Common.DBConnectionString;
const string SP_NAME = "Insert_ExamRecord";
SqlConnection connection = null;
SqlTransaction trans = null;
try
{
connection = new SqlConnection(CONN_STRING);
connection.Open();
trans = connection.BeginTransaction();
SqlParameter[] parms = new SqlParameter[15];
int idx = 0; //0
parms[idx] = new SqlParameter(" @Exame_Id varchar", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = ExamId;
++idx; //1
parms[idx] = new SqlParameter(" @Exame_Name", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = studentname;
++idx; //2
parms[idx] = new SqlParameter(" @Sex", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = sex;
++idx; //3
parms[idx] = new SqlParameter("@Pid_No", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = id;
++idx; //4
parms[idx] = new SqlParameter("@Exam_Catg", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = examclass;
++idx; //5
parms[idx] = new SqlParameter("@CarName", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = carname;
++idx; //6
parms[idx] = new SqlParameter(" @CarClass", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = carclass;
++idx; //7
parms[idx] = new SqlParameter("@ClinentIndex", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = index;
++idx; //8
parms[idx] = new SqlParameter("@EcamCount", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = examnumber;
++idx; //9
parms[idx] = new SqlParameter(" @ExamPlace", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value =examplac;
++idx; //10
parms[idx] = new SqlParameter(" @Inspector", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value =inspetor;
++idx; //11
parms[idx] = new SqlParameter(" @Exam_Book_DT", SqlDbType.VarChar,30);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = registertime;
++idx; //12
parms[idx] = new SqlParameter("@RecordState", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = recordstate;
++idx; //13
parms[idx] = new SqlParameter("@Grade1", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = grade1;
++idx; //14
parms[idx] = new SqlParameter(" @Company", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = company;
++idx; //15
SqlHelper.ExecuteNonQuery(trans, SP_NAME, parms); trans.Commit();
connection.Close();
}
catch (Exception ex)
{
if (trans != null)
trans.Rollback(); throw new ApplicationException("Insert Examinee Record Error: " + ex.Message);
}
finally
{
if (connection != null && connection.State == ConnectionState.Open)
connection.Close(); if (connection != null)
connection.Dispose();
}
}
不知道是哪个地方出错了,老在最后写入的时候提示无效对像名“ExamRecod”,这是我要写入的表名,有这表了,怎么还说无效,各位大侠帮帮小弟~~~
CREATE procedure dbo.Insert_ExamRecord
@Exame_Id varchar(50),
@Exame_Name varchar(50),
@Sex varchar (50),
@Pid_No varchar (50),
@Exam_Catg varchar (50),
@CarName varchar (50),
@CarClass varchar (50),
@ClinentIndex int ,
@EcamCount int ,
@ExamPlace varchar (50),
@Inspector varchar (50) ,
@Exam_Book_DT varchar (30),
@RecordState int,
@Grade1 int,
@Company varchar (50)AS
if not exists(select * from ExamRecord where EXAMID_NO=@Exame_Id and ID=@Pid_No)
insert into EXAMRECORD (ExamID,StudentName,StudentSex,ID,Examclass,CarName,Carcalss,clientIndex,ExamNumber,Examplace,Inspetor,Registertime,RecordStat,Grade1,company)
values(@Exame_Id,
@Exame_Name ,
@Sex ,
@Pid_No ,
@Exam_Catg ,
@CarName ,
@CarClass ,
@ClinentIndex ,
@EcamCount ,
@ExamPlace ,
@Inspector ,
@Exam_Book_DT,
@RecordState ,
@Grade1 ,
@Company
)
else
update EXAMRECORD
set
ExamID=@Exame_Id ,
StudentName = @Exame_Name ,
StudentSex=@Sex ,
ID= @Pid_No ,
Examclass= @Exam_Catg ,
CarName= @CarName ,
Carcalss@=CarClass ,
clientIndex= @ClinentIndex ,
ExamNumber= @EcamCount ,
Examplace =@ExamPlace ,
Inspetor= @Inspector ,
Registertime= @Exam_Book_DT,
RecordStat= @RecordState ,
Grade1= @Grade1 ,
company= @Company
where EXAMID_NO=@Exame_Id and ID=@Pid_No
GO
这是数据层代码
public static void InsertExaminee(string ExamId,string studentname,string sex,string id,string examclass,string carname
,string carclass,int index,int examnumber,string examplac,string inspetor,string registertime,int recordstate,int grade1
,string company) {
string CONN_STRING = Common.DBConnectionString;
const string SP_NAME = "Insert_ExamRecord";
SqlConnection connection = null;
SqlTransaction trans = null;
try
{
connection = new SqlConnection(CONN_STRING);
connection.Open();
trans = connection.BeginTransaction();
SqlParameter[] parms = new SqlParameter[15];
int idx = 0; //0
parms[idx] = new SqlParameter(" @Exame_Id varchar", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = ExamId;
++idx; //1
parms[idx] = new SqlParameter(" @Exame_Name", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = studentname;
++idx; //2
parms[idx] = new SqlParameter(" @Sex", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = sex;
++idx; //3
parms[idx] = new SqlParameter("@Pid_No", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = id;
++idx; //4
parms[idx] = new SqlParameter("@Exam_Catg", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = examclass;
++idx; //5
parms[idx] = new SqlParameter("@CarName", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = carname;
++idx; //6
parms[idx] = new SqlParameter(" @CarClass", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = carclass;
++idx; //7
parms[idx] = new SqlParameter("@ClinentIndex", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = index;
++idx; //8
parms[idx] = new SqlParameter("@EcamCount", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = examnumber;
++idx; //9
parms[idx] = new SqlParameter(" @ExamPlace", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value =examplac;
++idx; //10
parms[idx] = new SqlParameter(" @Inspector", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value =inspetor;
++idx; //11
parms[idx] = new SqlParameter(" @Exam_Book_DT", SqlDbType.VarChar,30);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = registertime;
++idx; //12
parms[idx] = new SqlParameter("@RecordState", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = recordstate;
++idx; //13
parms[idx] = new SqlParameter("@Grade1", SqlDbType.Int);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = grade1;
++idx; //14
parms[idx] = new SqlParameter(" @Company", SqlDbType.VarChar, 50);
parms[idx].Direction = ParameterDirection.Input;
parms[idx].Value = company;
++idx; //15
SqlHelper.ExecuteNonQuery(trans, SP_NAME, parms); trans.Commit();
connection.Close();
}
catch (Exception ex)
{
if (trans != null)
trans.Rollback(); throw new ApplicationException("Insert Examinee Record Error: " + ex.Message);
}
finally
{
if (connection != null && connection.State == ConnectionState.Open)
connection.Close(); if (connection != null)
connection.Dispose();
}
}
不知道是哪个地方出错了,老在最后写入的时候提示无效对像名“ExamRecod”,这是我要写入的表名,有这表了,怎么还说无效,各位大侠帮帮小弟~~~
EXAMRECORD
再看看出错提示里的
ExamRecod
看出来了吗,少了一个字母