1

我想在 Oracle 8i 中使用 join。我的查询如下。我有从两个表中获取数据的查询join,但我得到了错误SQL command not properly ended

    private List<StamfordProdRelease> GetStamfordProdReleases()
    {
        List<StamfordProdRelease> list = null;

        string srtQry = "SELECT NVL(NULL, 0) ID," +
        "                DLOG.RELEASEID AS RELEASE_BUILD," +
        "                TRUNC (DLOGDET.DEPLOYDATE) AS PROD_DEPLOY_DATE," +
        "                DLOGDET.DEPLOYREQUEST AS BAAR_RFD," +
        "                DLOG.FILENAMEEXT_VC AS SCRIPT_NAME," +
        "                DLOG.VERSION," +
        "                DLOG.REQUEST," +
        "                DLOG.NOTE AS COMMENTS" +
        "                FROM ADM_DEPLOYMENTLOGDETAIL DLOGDET" +
        "                JOIN ADM_DEPLOYMENTLOG DLOG ON DLOG.LOGNO = DLOGDET.LOGNO;";

        using (OracleConnection conn = new OracleConnection(Globals.Constants.AppConnectionStringReadOnly))
        {
            using (OracleCommand objCommand = new OracleCommand(srtQry, conn))
            {
                objCommand.CommandType = CommandType.Text;
                DataTable dt = new DataTable();
                OracleDataAdapter adp = new OracleDataAdapter(objCommand);
                conn.Open();
                adp.Fill(dt);
                if (dt != null)
                {
                    list = ConvertToStamfordProdRelease(dt).ToList();
                }
            }
        }
        return list;
    }

我的目标是将记录插入表中。

4

3 回答 3

0

将所有内容保存在一组中,"并且您只需要一个;即可在双引号之外结束 SQL 查询。

    private List<StamfordProdRelease> GetStamfordProdReleases()
    {
        List<StamfordProdRelease> list = null;

        string srtQry = "SELECT NVL(NULL, 0) ID, 
DLOG.RELEASEID AS RELEASE_BUILD, 
TRUNC (DLOGDET.DEPLOYDATE) AS PROD_DEPLOY_DATE, 
DLOGDET.DEPLOYREQUEST AS BAAR_RFD, 
DLOG.FILENAMEEXT_VC AS SCRIPT_NAME, 
DLOG.VERSION, 
DLOG.REQUEST, 
DLOG.NOTE AS COMMENTS 
FROM ADM_DEPLOYMENTLOGDETAIL DLOGDET 
JOIN ADM_DEPLOYMENTLOG DLOG ON DLOG.LOGNO = DLOGDET.LOGNO";

        using (OracleConnection conn = new OracleConnection(Globals.Constants.AppConnectionStringReadOnly))
        {
            using (OracleCommand objCommand = new OracleCommand(srtQry, conn))
            {
                objCommand.CommandType = CommandType.Text;
                DataTable dt = new DataTable();
                OracleDataAdapter adp = new OracleDataAdapter(objCommand);
                conn.Open();
                adp.Fill(dt);
                if (dt != null)
                {
                    list = ConvertToStamfordProdRelease(dt).ToList();
                }
            }
        }
        return list;
    }
于 2017-01-18T11:29:49.473 回答
0

Oracle 8i 不支持标准的 ANSI SQLJOIN语法。

该功能是在 Oracle 9i 第 2 版(又名 Oracle 9.2)中引入的

引用“SQL 参考中的新增功能”一章

SELECT [...] 具有新的符合 ANSI 的连接语法。

于 2018-07-09T14:47:04.123 回答
-2

不要将所有字符串组合在一起。

于 2018-07-09T14:06:11.197 回答