你写成
insert into table_test (fld1,fld2,fld3,....) select (......) from ...
实验一下

解决方案 »

  1.   

    肯定是字段数目不对,一个个往上加
    “insert into table_test(字段1,字段2,....) select f1,f2+3,.... from table_test”
      

  2.   

    把你的表结构贴出来
    试用
    insert into table_test (f1,f2....)
    select f1,f2+3,.... from table_test
      

  3.   

    sql脚本如下
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[test]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    drop table [dbo].[test]
    GOCREATE TABLE [dbo].[test] (
    [BuyBillID] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    [PID] [int] NOT NULL ,
    [Fixture] [varchar] (120) COLLATE Chinese_PRC_CI_AS NULL ,
    [Place] [varchar] (120) COLLATE Chinese_PRC_CI_AS NULL ,
    [Type] [varchar] (120) COLLATE Chinese_PRC_CI_AS NULL ,
    [KindId] [bigint] NULL ,
    [WarehouseNumber] [int] NULL ,
    [BuyNumber] [int] NULL ,
    [SpareNumber] [int] NULL ,
    [Price] [money] NULL ,
    [Total] AS ([Price] * [BuyNumber]) ,
    [Memo] [varchar] (250) COLLATE Chinese_PRC_CI_AS NULL ,
    [BuyProgress] [char] (10) COLLATE Chinese_PRC_CI_AS NULL ,
    [PlanDatetime] [datetime] NULL ,
    [LastDateTime] [datetime] NULL ,
    [EnterOver] [bit] NULL ,
    [EnterNumber] [int] NULL 
    ) ON [PRIMARY]
    GO
      

  4.   

    我最不理解的是为什么用“insert into table_test select * from table_test”
    所出现的错误提示是“列名或所提供的值的数目和与表定义不匹配”;
    这样是不可能写少啊