From 02840d1ba3ff75b5ada58807f69e0bff73b9599c Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 12 Nov 2004 15:56:25 -0800 Subject: Needed for WL# 2094, MySQL Federated Storage Handler sql_string.h: simple string method to drop last character of a string (also decrements str_length) sql/sql_string.h: simple string method to drop last character of a string (also decrements str_length) BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted --- sql/sql_string.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'sql/sql_string.h') diff --git a/sql/sql_string.h b/sql/sql_string.h index cb5b1fb25fd..2101db40f92 100644 --- a/sql/sql_string.h +++ b/sql/sql_string.h @@ -141,6 +141,34 @@ public: bool set(longlong num, CHARSET_INFO *cs); bool set(ulonglong num, CHARSET_INFO *cs); bool set(double num,uint decimals, CHARSET_INFO *cs); + + /* + PMG 2004.11.12 + This is a method that works the same as perl's "chop". It simply + drops the last character of a string. This is useful in the case + of the federated storage handler where I'm building a unknown + number, list of values and fields to be used in a sql insert + statement to be run on the remote server, and have a comma after each. + When the list is complete, I "chop" off the trailing comma + + ex. + String stringobj; + stringobj.append("VALUES ('foo', 'fi', 'fo',"); + stringobj.chop(); + stringobj.append(")"); + + In this case, the value of string was: + + VALUES ('foo', 'fi', 'fo', + VALUES ('foo', 'fi', 'fo' + VALUES ('foo', 'fi', 'fo') + + */ + inline void chop() + { + Ptr[str_length--]= '\0'; + } + inline void free() { if (alloced) -- cgit v1.2.1