C#之 oracle查询 得到DataSet数据

using Oracle.ManagedDataAccess.Client;

public
static DataSet QuerySQL(string sqlString) { string connectionString = $"Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=your IP)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=you service)));User Id=your username;Password=your pwd;"; using (OracleConnection connection = new OracleConnection(connectionString)) { OracleCommand cmd = new OracleCommand(); cmd.Connection = connection; try { connection.Open(); OracleDataAdapter _oraAdp = new OracleDataAdapter(sqlString, cmd.Connection); DataSet _ds = new DataSet(); _oraAdp.Fill(_ds); if (!(_ds != null && _ds.Tables.Count > 0)) _ds = null; //将Int16字段类型变更为Int32 if (_ds != null) { DataSet dsClone = new DataSet(); foreach (DataTable dt in _ds.Tables) { DataTable dtClone = dt.Clone(); foreach (DataColumn dc in dtClone.Columns) if (dc.DataType == typeof(short) || dc.DataType == typeof(long)) dc.DataType = typeof(int); foreach (DataRow dr in dt.Rows) dtClone.ImportRow(dr); dsClone.Tables.Add(dtClone); } _ds = dsClone; } return _ds; } catch (Exception ex) { throw ex; } finally { cmd.Dispose(); connection.Close(); } } }

 

posted @ 2025-08-29 13:35  无产铁锤  阅读(11)  评论(0)    收藏  举报