日期:2014-05-18  浏览次数:20806 次

C#获取ORACLE列名的问题,这次够详细了吧。。。求帮助啊
ORACLE里面有一个表叫T_USER,如下: 
ID,Name,Age,Sex,Num
1 张三 20 男 XXX
2 李四 30 女 XXX
3 王五 40 男 XXX

在winfrom坏境下,我定义一个数组,循环输出:
string [] s=k.GetInfo("Name","Age","Sex","Num");
for(int i=0;i<s.Length;i++)
{
 textBox1.Text+="大家好,我的名字叫"+s[i].Name+"。我今年"+s[i].Age+"岁";
}

现在我想把数据库中的数据代入,请问如何做?
就是像这样:
大家好,我的名字叫张三。我今年20岁。
大家好,我的名字叫李四。我今年30岁。
大家好,我的名字叫王五。我今年40岁。


------解决方案--------------------
探讨

引用:
ORACLE里面有一个表叫T_USER,如下:
ID,Name,Age,Sex,Num
1 张三 20 男 XXX
2 李四 30 女 XXX
3 王五 40 男 XXX

在winfrom坏境下,我定义一个数组,循环输出:
string [] s=k.GetInfo("Name","Age","Sex","Num");
for(int i=0;i<s.L……

------解决方案--------------------
首先需要获得数据库的数据:
C# code

 OracleConnection m_Conn = new OracleConnection();
 m_Conn.ConnectionString = string.Format("DATA SOURCE={0};PERSIST SECURITY INFO=True;USER ID={1}; PASSWORD={2}", DataSource, UserName, Password);

         /// <summary>
        /// 根据SQL语句返回相应的表
        /// </summary>
        /// <param name="Sql"></param>
        /// <param name="TableName"></param>
        /// <returns></returns>
        public DataTable GetDataTable(string Sql)
        {
            DataTable pDataTable;
            OracleDataAdapter pOracleDataAdapter;
m_Conn.Open();
            pOracleDataAdapter = new OracleDataAdapter(Sql, m_Conn);
            pDataTable = new DataTable();
            try
            {
                pOracleDataAdapter.Fill(pDataTable);

                return pDataTable;
            }
            catch (OracleException exp)
            {
                MessageBox.Show("执行SQL出现错误:" + exp.Message);
                return null;
            }
        }