コード例 #1
0
ファイル: MainForm.cs プロジェクト: eddylin2015/sportday
        private void menu_pulishtowebsite_field(Object sender, EventArgs e)
        {
            MPPFORM.ListBoxFilterForm lbf = new MPPFORM.ListBoxFilterForm();
            using (OdbcConnection conn = new OdbcConnection(Basic_HTB_Info.Conn_Str))
            {
                conn.Open();
                OdbcDataReader dr = new OdbcCommand("select fi_id,f_item,rcx from field_item where lock_item is null order by fi_id;", conn).ExecuteReader();
                while (dr.Read())
                {
                    if (dr[1].ToString().Contains("跳") || dr[1].ToString().Contains("球"))
                    {
                        lbf.lb.Items.Add(String.Format("{0}:{1}:{2}", dr[0], dr[1], dr[2]));
                    }
                }
                if (lbf.ShowDialog() == DialogResult.OK)
                {
                    string[] s_ar = lbf.lb.SelectedItem.ToString().Split(':');
                    string si_id = s_ar[0];
                    dr = new OdbcCommand("select frc_id,fi_id,rank,group_id,road,s_number,number,classno,name,rc,grk,note from field_rc where fi_id=" + si_id, conn).ExecuteReader();
                    StringBuilder sb = new StringBuilder("[");
                    while (dr.Read())
                    {
                        sb.Append("{");
                        for (int i = 0; i < dr.FieldCount; i++)
                        {
                            if (!dr.IsDBNull(i))
                            {
                                
                                if (i > 0) { sb.Append(","); }
                                if (i == 0) { sb.Append(String.Format("\"{0}\":\"{1}\"", Convert.ToChar(65 + i), dr.GetInt32(i)+2000)); }
                                else if (i < 2) { sb.Append(String.Format("\"{0}\":\"{1}\"", Convert.ToChar(65 + i), dr.GetValue(i))); }
                                else { sb.Append(String.Format("\"{0}\":\"{1}\"", Convert.ToChar(65 + i), dr.GetString(i).Replace(" ", "_").Trim())); }

                            }
                        }
                        sb.Append("}");
                    }
                    sb.Append("]");
                    MessageBox.Show(sb.ToString());
                    webpost.post(sb.ToString());
                }

                conn.Close();
            }
            
        }
コード例 #2
0
ファイル: Database.cs プロジェクト: Elitis/aqwemulator
        /// <summary>
        /// Performs a SQL query and returns the selected in the first found row as a Integer array. Usable for only one row.
        /// </summary>
        /// <param name="Query">The SQL query that selectes a row and the fields to get. LIMIT 1 is added.</param>
        public static int[] runReadRowIntegers(string Query)
        {
            try
            {
                ArrayList rowBuilder = new ArrayList();
                OdbcDataReader rowReader = new OdbcCommand(Query + " LIMIT 1", dbConnection).ExecuteReader();

                while (rowReader.Read())
                {
                    for (int i = 0; i < rowReader.FieldCount; i++)
                    {
                        try { rowBuilder.Add(rowReader.GetInt32(i)); }
                        catch { rowBuilder.Add(0); }
                    }
                }
                rowReader.Close();
                return (int[])rowBuilder.ToArray(typeof(int));
            }
            catch (Exception ex)
            {
                Logging.logError(ex.Message + ", query = " + Query);
                return new int[0];
            }
        }