WriteStringNoNull() public method

public WriteStringNoNull ( string v ) : void
v string
return void
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   byte v = (val is byte) ? (byte)val : Convert.ToByte(val);
   if (binary)
     packet.WriteByte(v);
   else
     packet.WriteStringNoNull(v.ToString());
 }
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   long v = (val is Int64) ? (Int64)val : Convert.ToInt64(val);
   if (binary)
     packet.WriteInteger(v, 8);
   else
     packet.WriteStringNoNull(v.ToString());
 }
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   int v = (val is UInt16) ? (UInt16)val : Convert.ToUInt16(val);
   if (binary)
     packet.WriteInteger((long)v, 2);
   else
     packet.WriteStringNoNull(v.ToString());
 }
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   double v = (val is double) ? (double)val : Convert.ToDouble(val);
   if (binary)
     packet.Write(BitConverter.GetBytes(v));
   else
     packet.WriteStringNoNull(v.ToString("R", CultureInfo.InvariantCulture));
 }
示例#5
0
 internal void Serialize(MySqlPacket packet, bool binary, MySqlConnectionStringBuilder settings)
 {
     if (!binary && (paramValue == null || paramValue == DBNull.Value))
     {
         packet.WriteStringNoNull("NULL");
     }
     else
     {
         if (ValueObject.MySqlDbType == MySqlDbType.Guid)
         {
             MySqlGuid g = (MySqlGuid)ValueObject;
             g.OldGuids  = settings.OldGuids;
             valueObject = g;
         }
         ValueObject.WriteValue(packet, binary, paramValue, size);
     }
 }
示例#6
0
 internal void Serialize(MySqlPacket packet, bool binary, MySqlConnectionStringBuilder settings)
 {
     if (!binary && (this.paramValue == null || this.paramValue == DBNull.Value))
     {
         packet.WriteStringNoNull("NULL");
         return;
     }
     if (this.ValueObject.MySqlDbType == MySqlDbType.Guid)
     {
         MySqlGuid mySqlGuid = (MySqlGuid)this.ValueObject;
         mySqlGuid.OldGuids = settings.OldGuids;
         this.ValueObject   = mySqlGuid;
     }
     if (this.ValueObject.MySqlDbType == MySqlDbType.Geometry)
     {
         MySqlGeometry mySqlGeometry = (MySqlGeometry)this.ValueObject;
         this.ValueObject = mySqlGeometry;
     }
     this.ValueObject.WriteValue(packet, binary, this.paramValue, this.Size);
 }
示例#7
0
		void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
		{
			if (!(val is TimeSpan))
				throw new MySqlException("Only TimeSpan objects can be serialized by MySqlTimeSpan");

			TimeSpan ts = (TimeSpan)val;
			bool negative = ts.TotalMilliseconds < 0;
			ts = ts.Duration();

			if (binary)
			{
				packet.WriteByte(8);
				packet.WriteByte((byte)(negative ? 1 : 0));
				packet.WriteInteger(ts.Days, 4);
				packet.WriteByte((byte)ts.Hours);
				packet.WriteByte((byte)ts.Minutes);
				packet.WriteByte((byte)ts.Seconds);
			}
			else
			{
				String s = String.Format("'{0}{1} {2:00}:{3:00}:{4:00}.{5}'",
					negative ? "-" : "", ts.Days, ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds);

				packet.WriteStringNoNull(s);
			}
		}
示例#8
0
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object v, int length)
 {
     uint val = (v is uint) ? (uint)v : Convert.ToUInt32(v);
     if (binary)
         packet.WriteInteger((long)val, is24Bit ? 3 : 4);
     else
         packet.WriteStringNoNull(val.ToString());
 }
示例#9
0
    void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
    {
      Guid guid = Guid.Empty;
      string valAsString = val as string;
      byte[] valAsByte = val as byte[];

      if (val is Guid)
        guid = (Guid)val;
      else
      {
        try
        {
          if (valAsString != null)
            guid = new Guid(valAsString);
          else if (valAsByte != null)
            guid = new Guid(valAsByte);
        }
        catch (Exception ex)
        {
          throw new MySqlException(Resources.DataNotInSupportedFormat, ex);
        }
      }

      if (OldGuids)
        WriteOldGuid(packet, guid, binary);
      else
      {
        guid.ToString("D");

        if (binary)
          packet.WriteLenString(guid.ToString("D"));
        else
          packet.WriteStringNoNull("'" + MySqlHelper.EscapeString(guid.ToString("D")) + "'");
      }
    }
示例#10
0
    private void WriteOldGuid(MySqlPacket packet, Guid guid, bool binary)
    {
      byte[] bytes = guid.ToByteArray();

      if (binary)
      {
        packet.WriteLength(bytes.Length);
        packet.Write(bytes);
      }
      else
      {
        packet.WriteStringNoNull("_binary ");
        packet.WriteByte((byte)'\'');
        EscapeByteArray(bytes, bytes.Length, packet);
        packet.WriteByte((byte)'\'');
      }
    }
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   int v = (val is Int32) ? (int)val : Convert.ToInt32(val);
   if (binary)
     packet.WriteInteger((long)v, is24Bit ? 3 : 4);
   else
     packet.WriteStringNoNull(v.ToString());
 }
        void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
        {
            byte[] buffToWrite = (val as byte[]);
            if (buffToWrite == null)
            {
                char[] valAsChar = (val as Char[]);
                if (valAsChar != null)
                    buffToWrite = packet.Encoding.GetBytes(valAsChar);
                else
                {
                    string s = val.ToString();
                    if (length == 0)
                        length = s.Length;
                    else
                        s = s.Substring(0, length);
                    buffToWrite = packet.Encoding.GetBytes(s);
                }
            }

            // we assume zero length means write all of the value
            if (length == 0)
                length = buffToWrite.Length;

            if (buffToWrite == null)
                throw new MySqlException("Only byte arrays and strings can be serialized by MySqlBinary");

            if (binary)
            {
                packet.WriteLength(length);
                packet.Write(buffToWrite, 0, length);
            }
            else
            {
                if (packet.Version.isAtLeast(4, 1, 0))
                    packet.WriteStringNoNull("_binary ");

                packet.WriteByte((byte)'\'');
                EscapeByteArray(buffToWrite, length, packet);
                packet.WriteByte((byte)'\'');
            }
        }
        void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
        {
            string v = val.ToString();
            if (length > 0)
            {
                length = Math.Min(length, v.Length);
                v = v.Substring(0, length);
            }

            if (binary)
                packet.WriteLenString(v);
            else
                packet.WriteStringNoNull("'" + MySqlHelper.EscapeString(v) + "'");
        }
        void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
        {
            byte[] buffToWrite = null;

              try
              {
            buffToWrite = ((MySqlGeometry)val)._valBinary;
              }
              catch
              {
            buffToWrite = val as Byte[];
              }

              if (buffToWrite == null)
              {
            MySqlGeometry v = new MySqlGeometry(0, 0);
            MySqlGeometry.TryParse(val.ToString(), out v);
            buffToWrite = v._valBinary;
              }

              byte[] result = new byte[GEOMETRY_LENGTH];

              for (int i = 0; i < buffToWrite.Length; i++)
              {
               if (buffToWrite.Length < GEOMETRY_LENGTH)
             result[i + 4] = buffToWrite[i];
               else
            result[i] = buffToWrite[i];
              }

            packet.WriteStringNoNull("_binary ");
            packet.WriteByte((byte)'\'');
            EscapeByteArray(result, GEOMETRY_LENGTH, packet);
            packet.WriteByte((byte)'\'');
        }
        private void SerializeText(MySqlPacket packet, MySqlDateTime value)
        {
            string val = String.Empty;

            if (type == MySqlDbType.Timestamp && !packet.Version.isAtLeast(4, 1, 0))
                val = String.Format("{0:0000}{1:00}{2:00}{3:00}{4:00}{5:00}",
                    value.Year, value.Month, value.Day, value.Hour, value.Minute, value.Second);
            else
            {
                val = String.Format("{0:0000}-{1:00}-{2:00}",
                    value.Year, value.Month, value.Day);
                if (type != MySqlDbType.Date)
                    val = String.Format("{0} {1:00}:{2:00}:{3:00}", val,
                        value.Hour, value.Minute, value.Second);
            }
            packet.WriteStringNoNull("'" + val + "'");
        }
 public void WriteValue(MySqlPacket packet, bool binary, object value, int length)
 {
     var v = (value is bool) ? (bool)value : Convert.ToBoolean(value);
     if (binary)
         packet.WriteInteger((long) (v ? 1 : 0), 8);
     else
         packet.WriteStringNoNull(v.ToString());
 }
示例#17
0
 internal void Serialize(MySqlPacket packet, bool binary, MySqlConnectionStringBuilder settings)
 {
   if (!binary && (paramValue == null || paramValue == DBNull.Value))
     packet.WriteStringNoNull("NULL");
   else
   {
     if (ValueObject.MySqlDbType == MySqlDbType.Guid)
     {
       var g = (MySqlGuid)ValueObject;
       g.OldGuids = settings.OldGuids;
       valueObject = g;
     }
     ValueObject.WriteValue(packet, binary, paramValue, size);
   }
 }
 void IMySqlValue.WriteValue(MySqlPacket packet, bool binary, object val, int length)
 {
   decimal v = (val is decimal) ? (decimal)val : Convert.ToDecimal(val);
   string valStr = v.ToString(CultureInfo.InvariantCulture);
   if (binary)
     packet.WriteLenString(valStr);
   else
     packet.WriteStringNoNull(valStr);
 }
示例#19
0
 public void WriteValue(MySqlPacket packet, bool binary, object value, int length)
 {
   ulong v = (value is UInt64) ? (UInt64)value : Convert.ToUInt64(value);
   if (binary)
     packet.WriteInteger((long)v, 8);
   else
     packet.WriteStringNoNull(v.ToString());
 }
示例#20
0
    private void SerializeText(MySqlPacket packet, MySqlDateTime value)
    {
      var val = String.Empty;

      val = String.Format("{0:0000}-{1:00}-{2:00}",
                value.Year, value.Month, value.Day);
      if (type != MySqlDbType.Date)
      {
        val = value.Millisecond > 0 ? String.Format("{0} {1:00}:{2:00}:{3:00}.{4:000}", val,
          value.Hour, value.Minute, value.Second, value.Millisecond) : String.Format("{0} {1:00}:{2:00}:{3:00} ", val,
          value.Hour, value.Minute, value.Second);
      }

      packet.WriteStringNoNull("'" + val + "'");
    }
示例#21
0
    internal void Serialize(MySqlPacket packet, bool binary, MySqlConnectionStringBuilder settings)
    {
      if (!binary && (paramValue == null || paramValue == DBNull.Value))
        packet.WriteStringNoNull("NULL");
      else
      {
        if (ValueObject.MySqlDbType == MySqlDbType.Guid)
        {
          MySqlGuid g = (MySqlGuid)ValueObject;
          g.OldGuids = settings.OldGuids;
          ValueObject = g;
        }
#if !CF
        if (ValueObject.MySqlDbType == MySqlDbType.Geometry)
        {
          MySqlGeometry v = (MySqlGeometry)ValueObject;
          ValueObject = v;
        }
#endif
        ValueObject.WriteValue(packet, binary, paramValue, Size);
      }
    }