0

我有两个表ProductsNotArrivedOrders(所有列都是nvarchar(50))。

现在在产品中我有这个专栏:

  1. 产品名称。
  2. 产品价格。
  3. 产品数量。

在 NotArrivedOrder 我有这个:

  1. 订单编号
  2. 产品名称
  3. 产品价格
  4. 产品数量
  5. 到达日期

我想将所有到达的订单插入到产品中(今天的日期比到达的日期大)。

我该怎么做 ?(有一个复制查询或类似的东西)。

我试过这个:

INSERT INTO Products 
values(Select ProductName,ProductPrice,ProductAmount FROM NotArrivedOrder Where ArriveDate ='30/05/2013')"

我收到了这个错误:

键 'Select'
附近的语法不正确 ')' 附近的语法不正确。
将 nvarchar 数据类型转换为 datetime 数据类型会导致值超出范围。

4

3 回答 3

3

请试试这个..

INSERT INTO PRODUCT 
SELECT ProductName, ProductPrice, ProductAmount 
FROM NotArrivedOrder 
WHERE ArriveDate<CONVERT(nvarchar(50),GetDate())
于 2013-05-30T09:42:19.990 回答
0

试试这样......

 Insert Into Product(ProductName,
    ProductPrice,
    ProductAmount)  (Select ProductName,
    ProductPrice,
    ProductAmount
    from NotArrivedOrder  where Casr(ArriveDate as Datetime)< GetDate())
于 2013-05-30T09:39:01.167 回答
0

询问:

insert into Product 
values(select productname,ProductPrice,ProductAmount 
       from NotArrived order 
       where ArriveDate<GetDate())

C#代码:

    try
    {
    con.open();
    cmd=new sqlcommand("insert into Product values(select productname,ProductPrice,ProductAmount from NotArrived order where ArriveDate<GetDate())",conn);
    cmd.executenonquery();
    con.close();
    }
    catch(exception ex)
    {
    }
    finally
    {
     con.close();
    }
于 2013-05-30T09:42:03.247 回答