예제 #1
0
        public BasketForm()
        {
            InitializeComponent();


            string LoginUsername = "******";

            object[] meta = new object[1];
            bool     read = true;
            string   connString;

            connString = @"Provider=Microsoft.JET.OLEDB.4.0;Data Source = L:\Comp-1632-System Development Project\TicketBookingSystem\TicketBookingSystem\TicketSysDB.mdb";

            OleDbConnection myConnection = new OleDbConnection(connString);

            myConnection.Open();
            OleDbCommand myCommand = new OleDbCommand("SELECT * FROM [Basket] WHERE [UserID] = @Username", myConnection);

            myCommand.Parameters.AddWithValue("@Username", LoginUsername);

            OleDbDataReader reader = myCommand.ExecuteReader();

            if (reader.Read() == true)
            {
                do
                {
                    int    NumberOfColums = reader.GetValues(meta);
                    int    NumberOfRows   = reader.GetValues(meta);
                    string play           = reader.GetString(2);
                    int    quantity       = reader.GetInt32(6);
                    string TicketType     = reader.GetString(3);

                    {
                        for (int j = 0; j < NumberOfRows; j++)
                        {
                            if (TicketType == "<div>Standard</div>" || TicketType == "Standard")
                            {
                                numericUpDown1.Value += quantity;
                            }
                            else if (TicketType == "<div>Child</div>" || TicketType == "Child")
                            {
                                numericUpDown2.Value += quantity;
                            }
                            else if (TicketType == "<div>OAP</div>" || TicketType == "OAP")
                            {
                                numericUpDown3.Value += quantity;
                            }
                        }
                    }

                    Console.WriteLine();
                    read = reader.Read();
                } while (read == true);
            }
            reader.Close();
        }
예제 #2
0
        public void updateScreen()
        {
            string LoginUsername = Account.LoginUsername;

            if (LoginUsername != null)
            {
                object[] meta = new object[1];
                bool     read = true;
                string   connString;
                connString = @"Provider=Microsoft.JET.OLEDB.4.0;Data Source = F:\Year 2\Systems Development\Coursework\SystemsDevelopment-master\TicketBookingSystem\TicketBookingSystem\TicketSysDB.mdb";

                OleDbConnection myConnection = new OleDbConnection(connString);
                myConnection.Open();
                OleDbCommand myCommand = new OleDbCommand("SELECT * FROM [Basket] WHERE [UserID] = @Username", myConnection);

                myCommand.Parameters.AddWithValue("@Username", LoginUsername);

                OleDbDataReader reader = myCommand.ExecuteReader();

                if (reader.Read() == true)
                {
                    do
                    {
                        int      NumberOfColums = reader.GetValues(meta);
                        int      NumberOfRows   = reader.GetValues(meta);
                        int      orderID        = reader.GetInt32(0);
                        string   play           = reader.GetString(2);
                        DateTime date           = reader.GetDateTime(6);
                        string   datestring     = date.ToShortDateString();
                        string   time           = reader.GetString(7);
                        float    price          = reader.GetInt32(8);
                        int      quantity       = reader.GetInt32(9);
                        string   TicketType     = reader.GetString(3);


                        {
                            Orderlist.Add(orderID + "");
                            Listl.Text += orderID + "      " + play + "     " + datestring + "    " + time + "    £" + price + "    " + "\n" + "\n" + "\n";
                            OrderBox.Items.Add(orderID);
                        }

                        Console.WriteLine();
                        read = reader.Read();
                    } while (read == true);
                }
                reader.Close();
            }



            else
            {
                MessageBox.Show("Please Login to Continue");
            }
        }
예제 #3
0
    /// <summary>
    /// SqlDataReader转成DataTable实现方法
    /// </summary>
    /// <param name="strSql"></param>
    /// <returns></returns>
    public DataTable DataReaderToDataTable(string strSql)
    {
        //string connstr = ConfigurationManager.ConnectionStrings["mycon"].ConnectionString;
        OleDbConnection OleDbConn  = new OleDbConnection(connstr);
        OleDbCommand    OleDbComm  = new OleDbCommand(strSql, OleDbConn);
        OleDbDataReader dataReader = null;
        DataTable       dtReturn   = null;

        object[] value = null;
        try
        {
            OleDbComm.Connection.Open();
            dataReader = OleDbComm.ExecuteReader();
            if (dataReader.HasRows)
            {
                dtReturn = CreateTableBySchemaTable(dataReader.GetSchemaTable());
                value    = new object[dataReader.FieldCount];
                while (dataReader.Read())
                {
                    dataReader.GetValues(value);
                    dtReturn.LoadDataRow(value, true);
                }
                value = null;
            }
        }
        catch (Exception err)
        { }
        finally
        {
            dataReader.Close();
            OleDbComm.Connection.Close();
            OleDbComm.Dispose();
        }
        return(dtReturn);
    }
예제 #4
0
        public static List <object[]> ReadTable(string dbName, string tblName)
        {
            List <object[]> data = new List <object[]>();

            if (!TableExist(dbName, tblName))
            {
                return(data);
            }

            OleDbConnection conn = new OleDbConnection(Provider + @"Data Source=" + dbName + ";");

            conn.Open();

            string          strSelect = "SELECT * FROM " + tblName;
            OleDbCommand    cmd       = new OleDbCommand(strSelect, conn);
            OleDbDataReader reader    = cmd.ExecuteReader();

            while (reader.Read())
            {
                object[] values = new object[reader.FieldCount];
                reader.GetValues(values);
                data.Add(values);
            }

            reader.Close();
            conn.Close();

            return(data);
        }
        protected DataTable ReadQueryResult(OleDbCommand command)
        {
            DataTable table = new DataTable();

            using (OleDbDataReader reader = command.ExecuteReader())
            {
                for (int i = 0; i < reader.FieldCount; i++)
                {
                    table.Columns.Add(reader.GetName(i), reader.GetFieldType(i));
                }
                object[] values = new object[reader.FieldCount];
                while (reader.Read())
                {
                    reader.GetValues(values);
                    table.Rows.Add(values);
                }
            }
            foreach (DataColumn col in table.Columns)
            {
                if (col.ColumnName.Contains(memberCaption))
                {
                    col.ColumnName = col.ColumnName.Remove(col.ColumnName.Length - memberCaption.Length);
                }
            }
            return(table);
        }
예제 #6
0
        /// <summary>
        /// 执行查询存储过程返回结果集
        /// </summary>
        /// <param name="TransID">连接字符串</param>
        /// <param name="StrConn">连接字符串</param>
        /// <param name="ProcedureName">存储过程名</param>
        /// <param name="Params">Sql 参数,参数值所在位置必须与参数名一致</param>
        /// <returns>返回数据集</returns>
        public DataTable QueryProcedureTable(string TransID, string StrConn, string ProcedureName, Dictionary <string, object> Params)
        {
            OleDbConnection oConn = GetOleDbConnection(TransID, StrConn);

            try
            {
                using (OleDbCommand oCmd = new OleDbCommand(ProcedureName, oConn))
                {
                    oCmd.CommandType = CommandType.StoredProcedure;
                    CreateSqlProcedureParam(oCmd, Params);
                    using (OleDbDataReader odr = oCmd.ExecuteReader(CommandBehavior.CloseConnection))
                    {
                        using (DataTable dtSchema = odr.GetSchemaTable())
                        {
                            DataTable dtResult  = BuildDataTable(dtSchema);
                            object[]  aryValues = new object[odr.FieldCount];
                            dtResult.BeginLoadData();
                            while (odr.Read())
                            {
                                odr.GetValues(aryValues);
                                dtResult.LoadDataRow(aryValues, true);
                            }
                            dtResult.EndLoadData();
                            aryValues = null;
                            return(dtResult);
                        }
                    }
                }
            }
            finally
            {
                CloseConnection(TransID, oConn);
            }
        }
예제 #7
0
        /// <summary>
        /// 执行查询存储过程返回结果集
        /// </summary>
        /// <param name="TransID">连接字符串</param>
        /// <param name="StrConn">连接字符串</param>
        /// <param name="ProcedureName">存储过程名</param>
        /// <param name="Params">Sql 参数,参数值所在位置必须与参数名一致</param>
        /// <returns>返回数据集</returns>
        public byte[] QueryProcedure(string TransID, string StrConn, string ProcedureName, Dictionary <string, object> Params)
        {
            OleDbConnection oConn = GetOleDbConnection(TransID, StrConn);

            try
            {
                using (OleDbCommand oCmd = new OleDbCommand(ProcedureName, oConn))
                {
                    oCmd.CommandType = CommandType.StoredProcedure;
                    CreateSqlProcedureParam(oCmd, Params);
                    using (OleDbDataReader odr = oCmd.ExecuteReader(CommandBehavior.CloseConnection))
                    {
                        using (DataTable dtSchema = odr.GetSchemaTable())
                        {
                            using (CJia.Net.Serialization.SerializationWriter sw = new Net.Serialization.SerializationWriter())
                            {
                                SerializationSchema(sw, dtSchema);
                                object[] aryValues = new object[odr.FieldCount];
                                while (odr.Read())
                                {
                                    odr.GetValues(aryValues);
                                    sw.WriteOptimized(aryValues);
                                }
                                aryValues = null;
                                return(sw.ToArray());
                            }
                        }
                    }
                }
            }
            finally
            {
                CloseConnection(TransID, oConn);
            }
        }
예제 #8
0
        /// <summary>
        /// 执行查询SQL语句
        /// </summary>
        /// <param name="StrConn">连接字符串</param>
        /// <param name="StrConn">连接字符串</param>
        /// <param name="TransID">事务ID</param>
        /// <param name="SqlText">Sql 文本</param>
        /// <param name="SqlParams">Sql 参数,参数值所在位置必须与参数名一致</param>
        /// <returns>返回数据集</returns>
        public DataTable QueryTable(string TransID, string StrConn, string SqlText, object[] SqlParams)
        {
            OleDbConnection oConn = GetOleDbConnection(TransID, StrConn);

            try
            {
                using (OleDbCommand oCmd = new OleDbCommand(SqlText, oConn))
                {
                    oCmd.Transaction = GetTransaction(TransID);
                    CreateSqlParam(oCmd, SqlParams);
                    using (OleDbDataReader odr = oCmd.ExecuteReader(CommandBehavior.CloseConnection))
                    {
                        using (DataTable dtSchema = odr.GetSchemaTable())
                        {
                            DataTable dtResult  = BuildDataTable(dtSchema);
                            object[]  aryValues = new object[odr.FieldCount];
                            dtResult.BeginLoadData();
                            while (odr.Read())
                            {
                                odr.GetValues(aryValues);
                                dtResult.LoadDataRow(aryValues, true);
                            }
                            dtResult.EndLoadData();
                            aryValues = null;
                            return(dtResult);
                        }
                    }
                }
            }
            finally
            {
                CloseConnection(TransID, oConn);
            }
        }
예제 #9
0
        protected static ArrayList execQuery(string sql)
        {
            ArrayList    result = new ArrayList();
            OleDbCommand cmd    = new OleDbCommand(sql, conn);

            try
            {
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                //                conn.Open();
                OleDbDataReader dbReader = cmd.ExecuteReader();
                while (dbReader.Read())
                {
                    object[] values = new object[dbReader.FieldCount]; // 对应一条记录
                    dbReader.GetValues(values);                        //将一行的数据读进values数组中
                    result.Add(values);
                }
            }
            catch (OleDbException ex)
            {
                string s = ex.ToString();
                MessageBox.Show(s, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                conn.Close();
            }
            return(result);
        }
예제 #10
0
        //Method: Login User
        public static User Login(string username, string password)
        {
            string getUserQuery = "SELECT * FROM Users WHERE [Username] = @Username AND [Password] = @Password";

            using (OleDbConnection oleConn = new OleDbConnection(oleConnectionString))
            {
                oleConn.Open();
                object[] user = new object[6];
                using (OleDbCommand oleCmd = new OleDbCommand(getUserQuery, oleConn))
                {
                    oleCmd.Parameters.AddWithValue("@Username", username);
                    oleCmd.Parameters.AddWithValue("@Password", password);
                    using (OleDbDataReader dr = oleCmd.ExecuteReader())
                    {
                        while (dr.Read())
                        {
                            dr.GetValues(user);
                        }
                    }
                }
                if (user == null)
                {
                    Exception ex = new Exception("User Not Found");
                    throw ex;
                }
                else
                {
                    double        userID  = double.Parse(user[0].ToString());
                    List <double> friends = Database.GetFriends(userID);
                    User          userObj = new User(userID, user[1].ToString(), friends);
                    return(userObj);
                }
            }
        }
예제 #11
0
        private void EmployeesButton_Click(object sender, RoutedEventArgs e)
        {
            string       query = "select * from Employees";
            OleDbCommand cmd   = new OleDbCommand(query, cn);

            cn.Open();

            OleDbDataReader read = cmd.ExecuteReader();

            //Hardcoded an arbitrary magic number here. Ideally would be more thoughtful.
            object[] data  = new object[10];
            string   etext = "";

            while (read.Read())
            {
                read.GetValues(data);
                //And here.
                for (int i = 0; i < 10; i++)
                {
                    etext += data[i] + " ";
                }
                etext += "\n";
            }

            EmployeeText.Text = etext;
            cn.Close();
        }
 public ImportDelimitedEventArgs(OleDbDataReader reader, int number)
 {
     object[] columns = new object[reader.FieldCount];
     reader.GetValues(columns);
     _content = new ReadOnlyCollection <object>(columns);
     _lineNr  = number;
 }
예제 #13
0
        public static void readFromDB(OleDbConnection conn)
        {
            string          testSelect = " SELECT * FROM ImportAccess";
            OleDbCommand    comm       = new OleDbCommand(testSelect, conn);
            OleDbDataReader dr         = comm.ExecuteReader();

            object[] buffer = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            StringBuilder sb = new StringBuilder();

            while (dr.Read())// populate buffer with values from db
            {
                int value = dr.GetValues(buffer);

                for (int i = 0; i < buffer.Length; i++)
                {
                    sb.Append(buffer[i] + ",");
                }
                sb.Remove(buffer.Length - 1, 1);
            }
            ConsoleKeyInfo cki = new ConsoleKeyInfo();

            while (true)    // keep console window open
            {
                Console.WriteLine("Returned values " + sb.ToString());
                cki = Console.ReadKey(true);
                if (cki.Key == ConsoleKey.X)
                {
                    break;
                }
            }
            dr.Close();
        }
예제 #14
0
        private void btnExport_Click(object sender, EventArgs e)
        {
            try
            {
                OleDbConnection Myconnection = null;
                OleDbDataReader dbReader     = null;

                Myconnection = new OleDbConnection(connectionName);
                Myconnection.Open();

                OleDbCommand cmd = Myconnection.CreateCommand();
                cmd.CommandText = "SELECT * FROM AVR WHERE [Rapport nr] =" + aktuelRapportNR;
                dbReader        = cmd.ExecuteReader();

                object[] liste = new object[dbReader.FieldCount];
                if (dbReader.Read() == true)
                {
                    int NumberOfColums = dbReader.GetValues(liste);

                    for (int i = 0; i < NumberOfColums; i++)
                    {
                        output += "|" + liste[i].ToString();
                    }
                }

                dbReader.Close();
                Myconnection.Close();
                txtStatus.Text = "Export Lykkes! Luk programmet!";
            }
            catch (Exception)
            {
                txtStatus.Text = "Export Fejlet!";
            }
        }
예제 #15
0
        public override bool Update()
        {
            bool have_data = reader.Read();

            if (!have_data)
            {
                return(false);
            }

            Index += 1;
            reader.GetValues(rowdata);

            var time   = (DateTime)rowdata[0];
            var detail = (string)rowdata[1];
            var err    = (string)rowdata[2];
            var source = (string)rowdata[3];

            // New batch: hla ips perf r01
            // Run recipe: sonosep-LoopRecipe
            if (err == "Recipe started") // new recipe start event
            {
                var name = detail.Substring("Run recipe: ".Length);
                _record.SetNewRecipeData(name);
            }
            else
            {
                _record.SetRecipeStepData(Index.ToString(), time.ToString(), detail, source);
            }
            return(true);
        }
예제 #16
0
        protected static List <Object[]> executeReader(string sql)
        {
            List <Object[]> result = new List <object[]>();
            OleDbCommand    cmd    = new OleDbCommand(sql, conn);

            try
            {
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                OleDbDataReader reader = cmd.ExecuteReader();
                while (reader.Read())
                {
                    Object[] values = new Object[reader.FieldCount];
                    reader.GetValues(values);
                    result.Add(values);
                }
            }
            catch (OleDbException ex)
            {
                string s = ex.ToString();
                MessageBox.Show(s, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                conn.Close();
            }
            return(result);
        }
예제 #17
0
        private string[] queryDB(string query, string dbPath)
        {
            string connectionString = string.Format("Provider={0}; Data Source={1}; Jet OLEDB:Engine Type={2}",
                                                    "Microsoft.Jet.OLEDB.4.0", dbPath, 5);
            OleDbConnection connection = new OleDbConnection(connectionString);

            connection.Open();
            OleDbCommand command = new OleDbCommand(query, connection);

            object[] row = null;
            try
            {
                using (OleDbDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        row = new object[reader.FieldCount];
                        reader.GetValues(row);
                    }
                    command.Dispose();
                }
                connection.Close();
                string result = (string)row[0];;
                return(new string[] { null, result });
            } catch (Exception ex)
            {
                connection.Close();
                return(new string[] { ex.Message, null });;
            }
        }
예제 #18
0
        public static List <object[]> execQuery(string sql)
        {
            List <object[]> result = new List <object[]>();
            OleDbCommand    cmd    = new OleDbCommand(sql, conn);

            try
            {
                conn.Open();
                OleDbDataReader dbReader = cmd.ExecuteReader();
                while (dbReader.Read())
                {
                    object[] values = new object[dbReader.FieldCount];
                    dbReader.GetValues(values);//将一行的数据读进values数组中
                    result.Add(values);
                }
            }
            catch (OleDbException ex)
            {
                string s = ex.ToString();
            }
            finally
            {
                conn.Close();
            }
            return(result);
        }
        private void GetData(string tablename, string sSql, string sDisplayField)
        {
            dataGridView1.Rows.Clear();
            dataGridView1.Columns.Clear();
            try
            {
                using (OleDbConnection sqlconn = new OleDbConnection(CommonClass.sDBConnectionString))
                {
                    OleDbCommand sqlcom = new OleDbCommand("select " + sDisplayField + " from " + tablename + " where 线编号='" +
                                                           CommonClass.listDIC[0].sLineCode +
                                                           "' and 行别='" + CommonClass.listDIC[0].sDir + "' " + sSql, sqlconn);

                    sqlconn.Open();
                    OleDbDataReader oddr = sqlcom.ExecuteReader();
                    for (int i = 0; i < oddr.VisibleFieldCount; i++)
                    {
                        dataGridView1.Columns.Add(oddr.GetName(i), oddr.GetName(i));
                    }
                    while (oddr.Read())
                    {
                        object[] o = new object[oddr.VisibleFieldCount];
                        oddr.GetValues(o);
                        dataGridView1.Rows.Add(o);
                    }
                    sqlconn.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            //CommonClass.listDIC[0].sLineCode
        }
예제 #20
0
 public ArrayList getDataORA(String str)
 {
     try
     {
         using (OleDbConnection con_ora = new OleDbConnection(strConnection))
         {
             con_ora.Open();
             using (OleDbCommand command = new OleDbCommand(str, con_ora))
             {
                 using (OleDbDataReader reader = command.ExecuteReader())
                 {
                     ArrayList list = new ArrayList();
                     while (reader.Read())
                     {
                         object[] values = new object[reader.FieldCount];
                         reader.GetValues(values);
                         list.Add(values);
                     }
                     return(list);
                 }
             }
         }
     }
     catch (Exception e)
     {
         // strError = e.Message.ToString();
         return(null);
     }
 }
예제 #21
0
        public Good GetGood(int id)
        {
            Good result = new Good();

            string          query = "select * from [GoodsTable] where Id = " + id.ToString();
            OleDbConnection cnn   = new OleDbConnection(ConnString);
            OleDbCommand    cmd   = new OleDbCommand(query, cnn);

            cmd.CommandType = System.Data.CommandType.Text;

            cnn.Open();
            OleDbDataReader reader = cmd.ExecuteReader();

            object[] data;

            reader.Read();

            data = new object[reader.FieldCount];
            reader.GetValues(data);

            result.Id      = Convert.ToInt32(data[0]);
            result.Name    = data[1].ToString();
            result.Amount  = Convert.ToInt32(data[2]);
            result.BarCode = Convert.ToInt32(data[3]);

            reader.Close();
            cnn.Close();

            return(result);
        }
예제 #22
0
        public static DataTable ConvertDataReaderToDataTable(OleDbDataReader reader)
        {
            var objDataTable = new DataTable("TmpDataTable");

            try
            {
                var intFieldCount = reader.FieldCount; //获取当前行中的列数;
                for (var intCounter = 0; intCounter <= intFieldCount - 1; intCounter++)
                {
                    objDataTable.Columns.Add(reader.GetName(intCounter), reader.GetFieldType(intCounter));
                }
                //populate   datatable
                objDataTable.BeginLoadData();
                //object[]   objValues   =   new   object[intFieldCount   -1];
                var objValues = new object[intFieldCount];
                while (reader.Read())
                {
                    reader.GetValues(objValues);
                    objDataTable.LoadDataRow(objValues, true);
                }
                reader.Close();
                objDataTable.EndLoadData();
                return(objDataTable);
            }
            catch (Exception ex)
            {
                throw new Exception("转换出错出错!", ex);
            }
        }
예제 #23
0
        private List <string> StartNetworkScan(CancellationToken ct)
        {
            List <string> localNetworks = new List <string>();

            if (ct.IsCancellationRequested)
            {
                return(localNetworks);
            }

            using (OleDbDataReader reader = OleDbEnumerator.GetEnumerator(Type.GetTypeFromProgID("SQLOLEDB Enumerator"))) {
                while (reader.Read())
                {
                    if (ct.IsCancellationRequested)
                    {
                        return(localNetworks);
                    }
                    object[] row = new object[reader.FieldCount];
                    reader.GetValues(row);
                    string networkHost = (string)row[0];

                    if (!localNetworks.Contains(networkHost))
                    {
                        localNetworks.Add(networkHost);
                    }
                }
            }

            return(localNetworks);
        }
예제 #24
0
        public List <Good> GetAll()
        {
            List <Good> result = new List <Good>();

            string          query = "select * from [GoodsTable]";
            OleDbConnection cnn   = new OleDbConnection(ConnString);
            OleDbCommand    cmd   = new OleDbCommand(query, cnn);

            cmd.CommandType = System.Data.CommandType.Text;

            cnn.Open();
            OleDbDataReader reader = cmd.ExecuteReader();

            object[] data;

            while (reader.Read())
            {
                data = new object[reader.FieldCount];
                reader.GetValues(data);

                result.Add(
                    new Good
                {
                    Id      = Convert.ToInt32(data[0]),
                    Name    = data[1].ToString(),
                    Amount  = Convert.ToInt32(data[2]),
                    BarCode = Convert.ToInt32(data[3])
                });
            }

            reader.Close();
            cnn.Close();

            return(result);
        }
예제 #25
0
        public static List <object[]> getSet(string query)
        {
            List <object[]> set         = new List <object[]>();
            string          _path_to_db = HttpContext.Current.Server.MapPath(@"~/resultdb.accdb");
            OleDbConnection con         = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + _path_to_db);

            try
            {
                con.Open();
                OleDbCommand cmd = con.CreateCommand();
                cmd.CommandText = query;
                OleDbDataReader rdr = cmd.ExecuteReader();
                while (rdr.Read())
                {
                    object[] record = new object[rdr.FieldCount];
                    rdr.GetValues(record);
                    set.Add(record);
                }
            }
            catch (Exception ex)
            {
            }
            con.Close();
            return(set);
        }
예제 #26
0
파일: source.cs 프로젝트: zhimaqiao51/docs
    public static void Main()
    {
        using (OleDbConnection connection =
                   new OleDbConnection("Provider=SQLOLEDB;Data Source=(local);Integrated Security=SSPI;Initial Catalog=Northwind")) {
            object[] meta = new object[10];
            bool     read;

            OleDbCommand command = new OleDbCommand("select * from Region", connection);

            connection.Open();
            OleDbDataReader reader = command.ExecuteReader();

            if (reader.Read() == true)
            {
                do
                {
                    int NumberOfColums = reader.GetValues(meta);

                    for (int i = 0; i < NumberOfColums; i++)
                    {
                        Console.Write("{0} ", meta[i].ToString());
                    }

                    Console.WriteLine();
                    read = reader.Read();
                } while (read == true);
            }
            reader.Close();
        }
    }
예제 #27
0
        public static string AccessRecordData(string tbl)
        {
            string k = "";

            object[] recs      = new Object[100];
            int      numOfObjs = 0;
            char     t         = '\t';
            string   rec       = "";

            if (AccessReader.Read() == false)
            {
                return("END OF FILE");
            }
            else
            {
                numOfObjs = AccessReader.GetValues(recs);
                for (int y = 0; y < numOfObjs; y++)
                {
                    k   = recs[y].ToString();
                    k   = TestString(k);
                    rec = rec + t.ToString() + k;
                }
                rec = rec.Substring(1);
            }
            return(rec);
        }
        private void button1_Click(object sender, EventArgs e)
        {
            // determination de type de compte
            int type = listBox2.SelectedIndex;
            // récuperation des variable
            String nom      = textBox1.Text;
            String prenom   = textBox2.Text;
            String mail     = textBox3.Text;
            String password = textBox4.Text;

            // Connexion au Data Base
            try
            {
                OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=../../../../database.accdb");
                OleDbCommand    cmd = con.CreateCommand();
                con.Open();
                cmd.Connection = con;
                // last inserted id

                cmd.CommandText = "Select n° from users ";
                int             id   = -1;
                Object[]        meta = new object[10];
                OleDbDataReader read = cmd.ExecuteReader();

                while (read.Read())
                {
                    int x;
                    int n = read.GetValues(meta);

                    x = (int)meta[0];
                    if (x > id)
                    {
                        id = x;
                    }
                }
                id++;
                read.Close();
                // insertion de nouveau utilisateur
                cmd.CommandText = "insert into users  values (" + id + ",'" + nom + "','" + prenom + "','" + mail + "','" + password + "'," + type + ") ";
                int insert = cmd.ExecuteNonQuery();
                if (insert > 0)
                {
                    MessageBox.Show(" Votre utilisateur est ajoutée ");
                }
                else
                {
                    MessageBox.Show(" Une erreur se produite lors d'ajout de votre utilisateur ");
                }
                //close con
                con.Close();
            }
            catch (System.Data.OleDb.OleDbException exp)
            {
                // cas de erreur lié a la conexion  a DB
                MessageBox.Show("Erreur de Connexion : " + exp.ToString());
            }
            // cacher ce interface
            Hide();
        }
예제 #29
0
        public static void fillListView(ListView lv, String sql, string[] ch)
        {
            lv.View          = View.Details; //定义列表显示的方式
            lv.MultiSelect   = false;        // 不可以多行选择
            lv.HeaderStyle   = ColumnHeaderStyle.Nonclickable;
            lv.Visible       = true;
            lv.GridLines     = true; //画表格线
            lv.FullRowSelect = true; //点击时整行选中
            lv.Columns.Clear();      //将原有的列清空
            lv.Items.Clear();        // 将原有的行清空
            if (ch != null)
            {
                for (int i = 0; i < ch.Length; i++)
                { //     设置表头信息
                    lv.Columns.Add(ch[i], 80, HorizontalAlignment.Center);
                }
            }
            OleDbCommand cmd = new OleDbCommand(sql, conn);

            try
            {
                conn.Open();
                OleDbDataReader dbReader = cmd.ExecuteReader();
                object[]        values   = new object[dbReader.FieldCount]; // 对应一条记录
                if (ch == null)
                {
                    for (int i = 0; i < dbReader.FieldCount; i++)
                    {
                        lv.Columns.Add(dbReader.GetName(i), 80, HorizontalAlignment.Center);
                    }
                }
                while (dbReader.Read())
                {
                    dbReader.GetValues(values);                        //将一样的数据读进values数组中
                    ListViewItem li = new ListViewItem();              //形成一个表项
                    li.SubItems.Clear();
                    li.SubItems[0].Text = values[0].ToString().Trim(); //设置第一列
                    for (int i = 1; i < values.Length; i++)
                    {
                        li.SubItems.Add(values[i].ToString().Trim());  //其余的列
                    }
                    lv.Items.Add(li);
                }
            }
            catch (OleDbException ex)
            {
                string s = ex.ToString();
                MessageBox.Show(s);
            }
            finally
            {
                conn.Close();
            }
        }
예제 #30
0
파일: DataReader.cs 프로젝트: jakedw7/iAM
 public int GetValues(object[] values)
 {
     if (SDR != null)
     {
         return(SDR.GetValues(values));
     }
     else
     {
         return(ODR.GetValues(values));
     }
 }