private static void Test_InitParameter()
    {
        Object v = new Object();
        DbType type = DbType.Byte;
        ParameterDirection dir = ParameterDirection.Input;
        DataRowVersion ver = DataRowVersion.Default;
        CUBRIDDataType cdt = CUBRIDDataType.CCI_U_TYPE_BIGINT;
        string sourceColumn = "driver";
        int size = 10;
        bool isNullable = false;
        byte precision =1;
        byte scale = 0;

        CUBRIDParameter p1 = new CUBRIDParameter(v);
        Debug.Assert(p1.Value == v);

        CUBRIDParameter p2 = new CUBRIDParameter(cdt);
        Debug.Assert(p2.CUBRIDDataType == cdt);

        CUBRIDParameter p3 = new CUBRIDParameter("cubrid", type, dir, "col", ver, v);
        Debug.Assert(p3.ParameterName == "cubrid");

        CUBRIDParameter p4 = new CUBRIDParameter("cubrid", cdt, size);
        Debug.Assert(p4.Size == size);

        CUBRIDParameter p5 = new CUBRIDParameter("cubrid", cdt, size, sourceColumn);
        Debug.Assert(p5.SourceColumn == sourceColumn);

        CUBRIDParameter p6 = new CUBRIDParameter("cubrid", cdt, size, dir, isNullable,
            precision, scale, sourceColumn, ver, v);
        Debug.Assert(p6.SourceColumn == sourceColumn);

        CUBRIDParameter p7 = new CUBRIDParameter("cubrid", cdt,dir,"col",ver,v);
        Debug.Assert(p7.CUBRIDDataType == cdt);

        CUBRIDParameter p8 = p7.Clone();
        Debug.Assert(p8.ToString() == p7.ToString());
    }