Index: src/libchcore/TSQLiteColumnDefinition.cpp
===================================================================
diff -u -r4a7f28238afbf60b9e3f3daeffe590ff1638ec74 -r9479911a096555a7504c5c8a8eaee83ecb63440c
--- src/libchcore/TSQLiteColumnDefinition.cpp	(.../TSQLiteColumnDefinition.cpp)	(revision 4a7f28238afbf60b9e3f3daeffe590ff1638ec74)
+++ src/libchcore/TSQLiteColumnDefinition.cpp	(.../TSQLiteColumnDefinition.cpp)	(revision 9479911a096555a7504c5c8a8eaee83ecb63440c)
@@ -23,26 +23,26 @@
 
 BEGIN_CHCORE_NAMESPACE
 
-TSQLiteColumnDefinition::TSQLiteColumnDefinition()
+TSQLiteColumnsDefinition::TSQLiteColumnsDefinition()
 {
 }
 
-TSQLiteColumnDefinition::~TSQLiteColumnDefinition()
+TSQLiteColumnsDefinition::~TSQLiteColumnsDefinition()
 {
 }
 
-size_t TSQLiteColumnDefinition::AddColumn(const TString& strColumnName)
+size_t TSQLiteColumnsDefinition::AddColumn(const TString& strColumnName)
 {
 	m_vColumns.push_back(strColumnName);
 	return m_vColumns.size() - 1;
 }
 
-void TSQLiteColumnDefinition::Clear()
+void TSQLiteColumnsDefinition::Clear()
 {
 	m_vColumns.clear();
 }
 
-size_t TSQLiteColumnDefinition::GetColumnIndex(const TString& strColumnName, bool bAdd)
+size_t TSQLiteColumnsDefinition::GetColumnIndex(const TString& strColumnName, bool bAdd)
 {
 	std::vector<TString>::const_iterator iterFnd = std::find(m_vColumns.begin(), m_vColumns.end(), strColumnName);
 	if(iterFnd == m_vColumns.end())
@@ -57,9 +57,37 @@
 	return std::distance(iterBegin, iterFnd);
 }
 
-TString TSQLiteColumnDefinition::GetColumnName(size_t stIndex) const
+TString TSQLiteColumnsDefinition::GetColumnName(size_t stIndex) const
 {
 	return m_vColumns.at(stIndex);
 }
 
+size_t TSQLiteColumnsDefinition::GetCount() const
+{
+	return m_vColumns.size();
+}
+
+bool TSQLiteColumnsDefinition::IsEmpty() const
+{
+	return m_vColumns.empty();
+}
+
+IColumnsDefinition& TSQLiteColumnsDefinition::operator%(const TString& strColName)
+{
+	AddColumn(strColName);
+	return *this;
+}
+
+chcore::TString TSQLiteColumnsDefinition::GetCommaSeparatedColumns() const
+{
+	TString strColumns;
+	BOOST_FOREACH(const TString& strName, m_vColumns)
+	{
+		strColumns += strName + _T(",");
+	}
+
+	strColumns.TrimRightSelf(_T(","));
+	return strColumns;
+}
+
 END_CHCORE_NAMESPACE