C# 从Oracle数据库获取数据并在combobox进行显示

折腾了半天,其实比较简单,代码如下,其中需要先添加引用
using System.Data.OracleClient;


        private void select()
         {
             string connString = "User Id=sh;Password=sh;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST =127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))";//本机数据库地址
             此处可以写在config文件中,便于修改:("conn" value="User Id=sh;Password=sh;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST =127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))"/>)
             OracleConnection conn = new OracleConnection(connString);
             conn.Open();
             //取出表中字段为PLACE的值,distinct过滤重复数据;
             string searchsql = "select distinct PLACE from TX_PERSON_CAR ";
             OracleCommand cmd = new OracleCommand(searchsql, conn);
             cmd.CommandType = CommandType.Text;
             //大容量数据,可以进行修改,使用DataSet和DataAdapter
             DataSet ds = new DataSet();
             OracleDataAdapter da = new OracleDataAdapter();
             da.SelectCommand = cmd;
             da.Fill(ds);
             DataTable dt = new DataTable();
             if (ds != null && ds.Tables.Count > 0)
                 dt = ds.Tables[0];
             int count = dt.Rows.Count;
             for (int i = 0; i < count; i++)
             {
                 string item = dt.Rows[i][0].ToString();//获取数据库中第i行第一列的值
                 camName.Items.Add(item);
             }
             camName.Items.Add("全部");
             this.camName.SelectedIndex = 0;
             this.camName.Text = "全部";
             conn.Close();
         }

你可能感兴趣的:(WPF学习)