示例#1
0
            public void CUBRIDSchemaProviderConstructorTest()
            {
                CUBRIDConnection connection = new CUBRIDConnection();;  // TODO: Initialize to an appropriate value

                connection.ConnectionString = DBHelper.connString;
                connection.Open();
                CUBRIDSchemaProvider target = new CUBRIDSchemaProvider(connection);


                CUBRIDCommand cmd = new CUBRIDCommand();

                cmd.Connection  = connection;
                cmd.CommandText = "select * from nation order by code asc";


                CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader();

                reader.Read();
                Assert.AreEqual(4, reader.FieldCount);


                cmd.Close();
                reader.Close();
                connection.Close();
            }
示例#2
0
        public void CUBRIDCommand_Constructor_SQL_Test()
        {
            CUBRIDConnection conn = new CUBRIDConnection();

            conn.ConnectionString = DBHelper.connString;

            string        sql = "select * from nation order by code asc";
            CUBRIDCommand cmd = new CUBRIDCommand(sql);

            cmd.Connection = conn;

            conn.Open();
            CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader();

            reader.Read();
            Assert.AreEqual(4, reader.FieldCount);
            Assert.AreEqual("AFG", reader.GetString(0));
            Assert.AreEqual("Afghanistan", reader.GetString(1));
            Assert.AreEqual("Asia", reader.GetString(2));
            Assert.AreEqual("Kabul", reader.GetString(3));

            cmd.Close();
            reader.Close();
            conn.Close();
        }
示例#3
0
        public void CUBRIDCommand_Constructor_SQLAndConnAndTran_Test()
        {
            CUBRIDConnection conn = new CUBRIDConnection();

            conn.ConnectionString = DBHelper.connString;
            conn.Open();
            conn.SetAutoCommit(false);

            string            sql         = "drop table if exists t";
            CUBRIDTransaction transaction = new CUBRIDTransaction(conn, CUBRIDIsolationLevel.TRAN_DEFAULT_ISOLATION);
            CUBRIDCommand     cmd         = new CUBRIDCommand(sql, conn, transaction);

            conn.BeginTransaction();
            cmd.ExecuteNonQuery();
            cmd.CommandText = "create table t (id int, name varchar(50))";
            cmd.ExecuteNonQuery();
            cmd.CommandText = "insert into t values(1, 'Nancy')";
            cmd.ExecuteNonQuery();
            conn.Commit();

            cmd.CommandText = "select * from t";
            CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader();

            reader.Read();
            Assert.AreEqual(2, reader.FieldCount);
            Assert.AreEqual("1", reader.GetString(0));
            Assert.AreEqual("Nancy", reader.GetString(1));

            cmd.Close();
            reader.Close();
            conn.Close();
        }
示例#4
0
        public void CUBRIDCommand_ExecuteReader_CloseConnection_Test()
        {
            using (CUBRIDConnection conn = new CUBRIDConnection())
            {
                conn.ConnectionString = DBHelper.connString;
                conn.Open();

                string        sql = "select * from nation order by code asc";
                CUBRIDCommand cmd = new CUBRIDCommand(sql, conn);

                LogTestStep("Test CommandBehavior.CloseConnection");
                CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader(CommandBehavior.CloseConnection);

                //verify the first two results
                reader.Read();
                Assert.AreEqual(4, reader.FieldCount);
                Assert.AreEqual("AFG", reader.GetString(0));
                Assert.AreEqual("Afghanistan", reader.GetString(1));
                Assert.AreEqual("Asia", reader.GetString(2));
                Assert.AreEqual("Kabul", reader.GetString(3));

                reader.Read();
                Assert.AreEqual(4, reader.FieldCount);
                Assert.AreEqual("AHO", reader.GetString(0));
                Assert.AreEqual("Netherlands Antilles", reader.GetString(1));
                Assert.AreEqual("Americas", reader.GetString(2));
                Assert.AreEqual("Willemstad", reader.GetString(3));

                reader.Close();

                if (reader.IsClosed)
                {
                    try
                    {
                        cmd = new CUBRIDCommand("create table t(id int)", conn);
                        cmd.ExecuteNonQuery();
                        LogStepFail();
                    }
                    catch (Exception ex)
                    {
                        Assert.AreEqual("The connection is not open!", ex.Message);
                        LogStepPass();
                    }
                }
                else
                {
                    LogStepFail();
                }

                //TODO: Test CommandBehavior.Default, CommandBehavior.SchemaOnly, CommandBehavior.KeyInfo, CommandBehavior.SingleRow, CommandBehavior.SequentialAccess
                LogTestResult();
            }
        }
示例#5
0
        private static void Test_apis_514()
        {
            string           sql    = "select * from nation order by code asc";
            CUBRIDCommand    cmd    = new CUBRIDCommand(sql, conn);
            CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader(CommandBehavior.CloseConnection);

            Console.WriteLine(reader.IsClosed);
            Console.WriteLine(conn.State);

            reader.Close();

            Console.WriteLine(reader.IsClosed);
            Console.WriteLine(conn.State);
        }
示例#6
0
        public void CUBRIDCommand_CreateParameter_Test()
        {
            CUBRIDConnection conn = new CUBRIDConnection();

            conn.ConnectionString = DBHelper.connString;
            conn.Open();

            DBHelper.ExecuteSQL("drop table if exists t", conn);
            DBHelper.ExecuteSQL("create table t (clsid bit(288))", conn);

            byte[] bytes = new byte[36] {
                55, 56, 50, 69, 55, 57, 67, 69,
                45, 50, 70, 68, 68, 45, 52, 68,
                50, 55, 45, 65, 51, 48, 48, 45,
                69, 48, 56, 56, 70, 56, 68, 68,
                55, 54, 66, 69
            };

            string sql = "INSERT INTO t VALUES (?);";

            CUBRIDCommand   cmd   = new CUBRIDCommand(sql, conn);
            CUBRIDParameter param = (CUBRIDParameter)cmd.CreateParameter();

            param.ParameterName = "?p";
            param.Value         = bytes;
            cmd.Parameters.Add(param);
            cmd.Parameters[0].CUBRIDDataType = CUBRIDDataType.CCI_U_TYPE_BIT;
            cmd.ExecuteNonQuery();
            cmd.Close();

            sql = "select * from t";
            cmd = new CUBRIDCommand(sql, conn);
            CUBRIDDataReader reader = (CUBRIDDataReader)cmd.ExecuteReader();

            reader.Read();
            byte[] buffer = (byte[])reader.GetValue(0);
            string clsid  = conn.GetEncoding().GetString(buffer);

            Assert.AreEqual(clsid, "782E79CE-2FDD-4D27-A300-E088F8DD76BE");
            reader.Close();
            cmd.Close();

            //Revert the test db
            DBHelper.ExecuteSQL("drop table if exists t", conn);
            conn.Close();
        }