EXEC master..xp_cmdshell 'bcp "OrionNPM..nodestest" in c:\nodes.txt -c -q -S"hostname" -Uzhou -P"zhou"'注:nodes.txt文件是从另一台sql 2005库中通过bcp导出生成的文本文件。
//Microsoft SQL Server 2005 - 9.00.3042.00  BCP导数据时,出现如下错误:
开始复制...
SQLState = 22018, NativeError = 0
Error = [Microsoft][SQL Native Client]对于造型说明无效的字符值
SQLState = 22003, NativeError = 0
Error = [Microsoft][SQL Native Client]数值超出范围
SQLState = 22018, NativeError = 0
Error = [Microsoft][SQL Native Client]对于造型说明无效的字符值
SQLState = 22003, NativeError = 0
Error = [Microsoft][SQL Native Client]数值超出范围
SQLState = 22018, NativeError = 0
Error = [Microsoft][SQL Native Client]对于造型说明无效的字符值
SQLState = 22003, NativeError = 0
Error = [Microsoft][SQL Native Client]数值超出范围
SQLState = 22018, NativeError = 0
Error = [Microsoft][SQL Native Client]对于造型说明无效的字符值
SQLState = 22003, NativeError = 0
Error = [Microsoft][SQL Native Client]数值超出范围
SQLState = 22018, NativeError = 0

解决方案 »

  1.   

    字段定义不一样比如数值定义为INT 但是其实导入的数据已经越界了。比如在TXT里面是文本 在数据库中长度不够。
      

  2.   

    表结构都为:
    CREATE TABLE [dbo].[nodestest](
    [NodeID] [int] NOT NULL,
    [ObjectSubType] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [IP_Address] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [DynamicIP] [bit] NULL,
    [UnManaged] [bit] NULL,
    [UnManageFrom] [datetime] NULL,
    [UnManageUntil] [datetime] NULL,
    [Caption] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [DNS] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [Community] [nvarchar](250) COLLATE Latin1_General_CS_AS NULL,
    [RWCommunity] [nvarchar](250) COLLATE Chinese_PRC_CI_AS NULL,
    [SysName] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [Vendor] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [LastBoot] [smalldatetime] NULL,
    [SystemUpTime] [real] NULL,
    [LastSystemUpTimePollUtc] [datetime] NULL,
    [SysObjectID] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [Description] [ntext] COLLATE Chinese_PRC_CI_AS NULL,
    [Location] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [Contact] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [RediscoveryInterval] [int] NULL,
    [PollInterval] [smallint] NULL,
    [VendorIcon] [char](20) COLLATE Chinese_PRC_CI_AS NULL,
    [IOSImage] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [IOSVersion] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [GroupStatus] [char](40) COLLATE Chinese_PRC_CI_AS NULL,
    [StatusDescription] [nvarchar](2000) COLLATE Chinese_PRC_CI_AS NULL,
    [Status] [char](20) COLLATE Chinese_PRC_CI_AS NULL,
    [StatusLED] [char](20) COLLATE Chinese_PRC_CI_AS NULL,
    [ChildStatus] [int] NOT NULL,
    [ResponseTime] [smallint] NULL,
    [PercentLoss] [real] NULL,
    [AvgResponseTime] [smallint] NULL,
    [MinResponseTime] [smallint] NULL,
    [MaxResponseTime] [smallint] NULL,
    [NextPoll] [datetime] NULL,
    [EngineID] [int] NULL,
    [LastSync] [datetime] NULL,
    [MachineType] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL,
    [Severity] [int] NULL,
    [NextRediscovery] [datetime] NULL,
    [StatCollection] [smallint] NULL,
    [Allow64BitCounters] [bit] NULL,
    [SNMPV2Only] [bit] NULL,
    [AgentPort] [nvarchar](250) COLLATE Chinese_PRC_CI_AS NOT NULL,
    [SNMPVersion] [tinyint] NULL,
    [SNMPV3Username] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3Context] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3PrivMethod] [nvarchar](10) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3PrivKey] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3PrivKeyIsPwd] [bit] NULL,
    [SNMPV3AuthMethod] [nvarchar](10) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3AuthKey] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [SNMPV3AuthKeyIsPwd] [bit] NULL,
    [RWSNMPV3Username] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3Context] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3PrivMethod] [nvarchar](10) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3PrivKey] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3PrivKeyIsPwd] [bit] NULL,
    [RWSNMPV3AuthMethod] [nvarchar](10) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3AuthKey] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [RWSNMPV3AuthKeyIsPwd] [bit] NULL,
    [CPULoad] [smallint] NULL,
    [TotalMemory] [real] NULL,
    [MemoryUsed] [real] NULL,
    [PercentMemoryUsed] [int] NULL,
    [BufferNoMemThisHour] [real] NULL,
    [BufferNoMemToday] [real] NULL,
    [BufferSmMissThisHour] [real] NULL,
    [BufferSmMissToday] [real] NULL,
    [BufferMdMissThisHour] [real] NULL,
    [BufferMdMissToday] [real] NULL,
    [BufferBgMissThisHour] [real] NULL,
    [BufferBgMissToday] [real] NULL,
    [BufferLgMissThisHour] [real] NULL,
    [BufferLgMissToday] [real] NULL,
    [BufferHgMissThisHour] [real] NULL,
    [BufferHgMissToday] [real] NULL,
    [External] [bit] NULL,
    [EntityType] [nvarchar](100) COLLATE Chinese_PRC_CI_AS NULL,
    [CMTS] [char](1) COLLATE Chinese_PRC_CI_AS NULL,
    [BlockUntil] [datetime] NOT NULL,
    [CustomPollerLastStatisticsPoll] [datetime] NOT NULL,
    [CustomPollerLastStatisticsPollSuccess] [datetime] NOT NULL,
    [City] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [Department] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
    [Comments] [nvarchar](250) COLLATE Chinese_PRC_CI_AS NULL
    ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]GO
    SET ANSI_PADDING OFF
      

  3.   

    检查一下,在两台电脑上导出时,所得txt文件的编码.
    最好都为ASC码或unicode码.
      

  4.   

    最好用格式化導入
    參照
    http://technet.microsoft.com/zh-cn/library/ms191516%28SQL.90%29.aspx