public void DataType_MultiSet_Test()
        {
            using (CUBRIDConnection conn = new CUBRIDConnection())
            {
                conn.ConnectionString = DBHelper.connString;
                conn.Open();

                DBHelper.ExecuteSQL("drop table if exists testtable", conn);

                DBHelper.ExecuteSQL("CREATE TABLE testtable(clsid multiset_of(INTEGER));", conn);

                using (CUBRIDCommand cmd = new CUBRIDCommand("Select * from TestTable", conn))
                {
                    using (CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader())
                    {
                        reader.Read();

                        Assert.AreEqual(reader.HasRows, false);
                        Assert.AreEqual(reader.GetColumnType(0), typeof(Object[]));
                        Assert.AreEqual(reader.GetColumnTypeName(0), "MULTISET");

                        try
                        {
                            reader.GetColumnName(-1);
                        }
                        catch (Exception ex)
                        {
                            Assert.IsTrue((ex as IndexOutOfRangeException) != null);
                        }

                        try
                        {
                            reader.GetColumnTypeName(-1);
                        }
                        catch (Exception ex)
                        {
                            Assert.IsTrue((ex as IndexOutOfRangeException) != null);
                        }

                        try
                        {
                            reader.GetColumnTypeName(2);
                        }
                        catch (Exception ex)
                        {
                            Assert.IsTrue((ex as IndexOutOfRangeException) != null);
                        }

                        try
                        {
                            reader.GetColumnType(-1);
                        }
                        catch (Exception ex)
                        {
                            Assert.IsTrue((ex as IndexOutOfRangeException) != null);
                        }

                        try
                        {
                            reader.GetColumnType(2);
                        }
                        catch (Exception ex)
                        {
                            Assert.IsTrue((ex as IndexOutOfRangeException) != null);
                        }
                    }
                }

                DBHelper.ExecuteSQL("drop TestTable;", conn);
            }
        }