Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 从字符串转换日期和/或时间时转换失败_Mysql_Sql_Sql Server 2008 - Fatal编程技术网

Mysql 从字符串转换日期和/或时间时转换失败

Mysql 从字符串转换日期和/或时间时转换失败,mysql,sql,sql-server-2008,Mysql,Sql,Sql Server 2008,我有一个设计如下的表列 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[client_Presence] ( [ClientID] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL, [Z923FormPath] [varchar](max) COLLATE SQL_Latin1_General_CP1_CI_AS NULL

我有一个设计如下的表列

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[client_Presence]
(  
    [ClientID] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
    [Z923FormPath] [varchar](max) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]  
现在,我正试图更新上表,如下所示

UPDATE  client_Presence
    SET Z923FormPath    =   'c:\windows\Z923Form.pdf'
    FROM    Client_Presence
    WHERE   ClientID    =   '12345'
我可以更新空值,“”值,getdate(),为什么我不能用字符串值更新

通过以上操作,我收到了以下错误,您能帮我一下吗

Procedure: Tr_client_Presence (Line: 19)
Line 19: Conversion failed when converting date and/or time from character string.

如果您能够将值更新为getDate(),并且更新为非空字符串,则会出现错误,看起来您错误地将列的数据类型设置为日期。您确定发布的代码片段是正确的吗?

我非常确定。我检查了1000次。在更新时,表上有一个名为
Tr\u client\u Presence
的触发器触发。请检查一下。错误发生在那里(第19行)。另外,您已经标记了问题
mysql
sql-server-2008
。答案是,列序列在client_presence和client_presence_日志表之间不匹配,DBA必须纠正它。列序列不是应该相关的。如果是的话,那就是糟糕的查询设计。我猜您有类似于
INSERT-INTO-log\u-table选择*FROM-table
。您应该更改触发器以在
INSERT
SELECT
部分中包含列名。应该类似于
INSERT INTO log_table(colA,colB)选择colA,colB FROM table