Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.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 - Fatal编程技术网

在mysql中如何在单个查询中进行插入和更新

在mysql中如何在单个查询中进行插入和更新,mysql,Mysql,这是我的桌子: CREATE TABLE 'jobseeker_text_approval' ( 'id' Int( 11 ) AUTO_INCREMENT NOT NULL, 'js_id' Int( 11 ) NULL, 'first_name' VarChar( 200 ) NULL, 'last_name' VarChar( 200 ) NULL, 'address_line1' VarChar( 150 ) NULL, 'address

这是我的桌子:

CREATE TABLE 'jobseeker_text_approval' ( 
    'id' Int( 11 ) AUTO_INCREMENT NOT NULL,
    'js_id' Int( 11 ) NULL,
    'first_name' VarChar( 200 ) NULL,
    'last_name' VarChar( 200 ) NULL,
    'address_line1' VarChar( 150 ) NULL,
    'address_line2' VarChar( 150 ) NULL,
    'about_me' Text NULL,
    'accomplishments' Text NULL,
    'awards' Text NULL,
    'created_on' Timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY ( 'id' ),
    CONSTRAINT 'js_id' UNIQUE( 'js_id' ) )
    ENGINE = InnoDB
    AUTO_INCREMENT = 272;
 )
我想在单个查询中进行插入和更新

我试过这个:

INSERT INTO jobseeker_text_approval (created_on)
VALUES('2017-02-26T00:00') ON DUPLICATE KEY UPDATE js_id= 216;
但是如果存在
js\u id
,它将添加一个新行,而不是更新该行。 如果存在具有给定js_id的行,我想更新该表。否则插入。我还尝试了替换功能。但它取代了
给定的值。但将行中的现有字段设置为null

这可能会对你有所帮助。你可以在插入之前创建一个触发器。我可以不使用触发器方法来创建吗?在插入中包含js_id-再看看插入是如何。。。更新语法工作是的。我已尝试。插入正在工作。但更新不工作