public PDBErrorCode ExecuteInsert(string tabName, DataTable dataTable) { PDBErrorCode retVal = PDBErrorCode.PdbE_OK; lock (ConnObj) { byte[] sendPacket = MakeInsertTableRequestPacket(tabName, dataTable); ConnObj.Request(sendPacket); byte[] recvPacket = ConnObj.Recv(); DecodeInsertTablePacket(recvPacket, out retVal); } return(retVal); }
/// <summary> /// 插入数据 /// </summary> /// <param name="sql">要执行的SQL语句列表</param> /// <returns>执行结果</returns> public PDBErrorCode ExecuteInsert(string sql) { PDBErrorCode retVal = PDBErrorCode.PdbE_OK; lock (ConnObj) { byte[] sendPacket = MakeRequestPacket(ProtoHeader.MethodCmdInsertReq, sql); ConnObj.Request(sendPacket); byte[] recvPacket = ConnObj.Recv(); DecodeInsertPacket(recvPacket, out retVal); } return(retVal); }
/// <summary> /// 查询 /// </summary> /// <param name="sql">执行的SQL</param> /// <returns>查询的结果集</returns> public DataTable ExecuteQuery(string sql) { SuccessCount = 0; PDBErrorCode retVal = 0; DataTable dtResult = new DataTable(); lock (ConnObj) { byte[] sendPacket = MakeRequestPacket(ProtoHeader.MethodCmdQueryReq, sql); ConnObj.Request(sendPacket); byte[] recvPacket = ConnObj.Recv(); DecodePacket(recvPacket, out retVal, dtResult); if (retVal != PDBErrorCode.PdbE_OK) { throw new PDBException(retVal); } } return(dtResult); }
/// <summary> /// 其他,例如:添加用户,删除用户,删除数据 等等.. /// </summary> /// <param name="sql">执行的SQL</param> public void ExecuteNonQuery(string sql) { SuccessCount = 0; lock (ConnObj) { byte[] sendPacket = MakeRequestPacket(ProtoHeader.MethodCmdNonQueryReq, sql); ConnObj.Request(sendPacket); byte[] recvPacket = ConnObj.Recv(); ProtoHeader proHdr = new ProtoHeader(recvPacket); if (proHdr.GetMethod() != ProtoHeader.MethodCmdNonQueryRep) { throw new PDBException(PDBErrorCode.PdbE_PACKET_ERROR, "报文错误:Error Packet"); } PDBErrorCode errCode = (PDBErrorCode)proHdr.GetReturnVal(); if (errCode != PDBErrorCode.PdbE_OK) { throw new PDBException(errCode); } } }