【问题标题】:sql subquery returns unspecified errorsql子查询返回未指定的错误
【发布时间】:2011-10-11 18:35:24
【问题描述】:

AM 使用以下查询从 vb6 查询访问数据库

INSERT INTO stock([i_name],[ref],[qty],[supplier_id]) 
VALUES('dd','dddd','11',(SELECT id FROM suppliers WHERE s_name ='dangote'))

但是当我运行查询时出现以下错误

-2147467259   Unspecified error           Microsoft JET Database Engine

谁能告诉我怎么回事

谢谢

【问题讨论】:

    标签: sql ms-access vb6 subquery


    【解决方案1】:
    INSERT INTO stock([i_name],[ref],[qty],[supplier_id]) 
    SELECT 'dd','dddd','11',id FROM suppliers WHERE s_name ='dangote';
    

    在我看来它应该可以工作。如果出现错误,请尝试将其粘贴到 Access 中新查询的 SQL 视图中。

    如果 qty 的字段类型是数字而不是文本,则丢弃值 11 周围的引号。

    INSERT INTO stock([i_name],[ref],[qty],[supplier_id]) 
    SELECT 'dd','dddd',11,id FROM suppliers WHERE s_name ='dangote';
    

    【讨论】:

    • 基于 SELECT 语句的经验...SELECT Now() AS snapshot_time, col1, col2 FROM Table1;
    • 你是怎么得到这个经验的,你前段时间得到的错误?有没有其他办法解决这个问题?
    • 我在 1987 年开始使用 SQL。我从未尝试过您尝试过的操作,因此没有遇到同样的错误。使用 Access 的数据库引擎,我认为 INSERT ... VALUES 可以让您只插入一行值。 INSERT ... SELECT 将允许您插入许多。
    • 哇,那是很久以前的事了。所以是哪本书。网站,你建议我用它来提高我的技能吗?
    • 我听说过有关 Joe Celko 为 Smarties 编写的 SQL 的好评。如果我从今天开始,我想我会先看看那里。您可以购买死树版本,我认为它也可以作为可免费下载的 PDF 获得。看看周围。祝你好运。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 2014-02-15
    • 2013-09-07
    相关资源
    最近更新 更多