当前位置:网站首页>C# Oracle 多表查询

C# Oracle 多表查询

2022-06-13 09:43:00 CSDN问答

请问下我用C# 连接Oracle数据库,进行多表关联查询报错是什么原因呀,我单表查询是没问题的,把SQL语句在数据库上运行也是能查到结果的。

using Oracle.ManagedDataAccess.Client;using System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DeleteOA{    public class OracleHelper    {        private static string connStr = "User Id=;Password=;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=ecology)))";        public static DataTable ExecuteDataTable(string sql, params OracleParameter[] parameters)        {            using (OracleConnection conn = new OracleConnection(connStr))            {                conn.Open();                using (OracleCommand cmd = conn.CreateCommand())                {                    cmd.CommandText = sql;                    cmd.Parameters.AddRange(parameters);                    OracleDataAdapter adapter = new OracleDataAdapter(cmd);                    DataTable datatable = new DataTable();                    adapter.Fill(datatable);                    //conn.Close();                    return datatable;                }            }        }    }}
using Oracle.ManagedDataAccess.Client;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace DeleteOA{    public partial class Form2 : Form    {        public Form2()        {            InitializeComponent();        }        private void button1_Click(object sender, EventArgs e)        {            string flowNumber = "N9999-000006";            string sqlstr = "SELECT WORKFLOW_CODESEQRECORD.REQUESTID,WORKFLOW_NOWNODE.NOWNODETYPE FROM WORKFLOW_CODESEQRECORD,WORKFLOW_NOWNODE WHERE WORKFLOW_CODESEQRECORD.REQUESTID = WORKFLOW_NOWNODE.REQUESTID and WORKFLOW_CODESEQRECORD.WORKFLOWCODE = :flowNumber";            DataTable dt = OracleHelper.ExecuteDataTable(sqlstr, new OracleParameter(":flowNumber", flowNumber));            int i = dt.Rows.Count;        }    }}

以下是数据库查询结果:

img

以下是系统运行报错:

img

原网站

版权声明
本文为[CSDN问答]所创,转载请带上原文链接,感谢
https://ask.csdn.net/questions/7736171