草庐IT

insert_one

全部标签

mysql - Drupal 数据库 API 查询 - row.update 如果存在,否则 row.insert

我一直在尝试在drupal中运行查询,如果条目已经存在则更新条目,如果不存在则插入新条目。目前的代码如下所示:db_query("IFEXISTS(SELECT%dFROM{uc_posten_packages.pid})UPDATE{uc_posten_packages}SETtitle='%s',label='%s',cost='%d',length='%d',width='%d',height='%d',weight='%d'WHEREpid=%dELSEINSERTINTO{uc_posten_packages}VALUES('%d','%s','%s','%d','%d','

mysql - SELECT 和其他值的 INSERT 结果

我想知道如果没有过程或服务器端调用数据库是否可行。我正在尝试将值插入到基于选择的表中,以及将从服务器提供的其他值。select语句将返回多个结果。我知道INSERTSELECT的存在,但是有没有SELECTINSERT?还是一种根据选择结果插入的方法?谢谢 最佳答案 不太确定问题出在哪里。你可以这样做:INSERTINTOtable(columns)SELECTcolumnorcolumnexpression1,columnorcolumnexpression2,…constantorconstantexpression1,cons

mysql - 仅使用一次时出现 "only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause"错误

我正在使用以下sql创建一个数据库表:CREATETABLE`cs3_ds1`(`ID`INTNOTNULL,`TIME`TIMESTAMPNOTNULL,`USER`VARCHAR(45)NOTNULL,`TIME1`TIMESTAMPNOTNULL,`TIME2`TIMESTAMPNOTNULL,`INSERT_TIME`TIMESTAMPNULLDEFAULTCURRENT_TIMESTAMP,PRIMARYKEY(`ID`))ENGINE=InnoDB虽然我只在一列中使用当前时间戳作为默认时间戳,但我收到以下错误:ERROR1293:Incorrecttabledefiniti

php - $this->db->insert_id();每次在 codeigniter 中返回 0

这个问题在这里已经有了答案:HowtotestifCisuccessfullyinserteddata(4个答案)关闭7年前。我正在使用codeigniter并一次插入一条记录。但问题是$this->db->insert_id();每次都返回0,但是记录已成功创建。我想不通。这是常见情况还是我犯了一些愚蠢的错误。我使用email_id作为主键,使用手机号作为唯一键。这是我的模态代码:functionsignup_insert($data){$result=$this->db->insert('registration_detail',$data);$insert_id=$this->d

MySQL current_insert_id()? (不是 last_insert_id())

我正在插入一个带有char列的行,用于基于(除其他事项外)该行的自动ID的散列。我知道我可以插入它、获取insert_id、计算哈希并更新它。有谁知道在单个查询中执行此操作的方法吗?您在插入时需要行insert_id。那是完全不可能的,还是有类似current_insert_id()...谢谢! 最佳答案 不,MySQL中没有函数可以为您提供current_insert_id()。从MySQL中的AUTO_INCREMENT字段获取生成的ID值的唯一方法是执行INSERT,然后调用last_insert_id()。因此,您可能需要执

sql - 是否可以使用 INSERT 命令将数据插入表的中间部分?

示例:索引|一些数据1|一些数据13|some_data34|一些数据45|some_data5我想做一个INSERT来添加--->2|some_data2。是否有SQL命令或某种方式来执行此操作?[编辑]好的。也许如果我解释了我想要完成的每一件事,你就会明白为什么我正在努力做我想做的事情。我在php中创建了一个Web管理页面,它只显示数据库表中的数据。现在这些显示的行是“可拖动的”。例如,您可以将第2行拖动到第4行。现在在“mouseup”事件上,我想将新订单保存在数据库中。1|数据1-------------------------->1|数据12|data2------拖动后--

php - SQL : many Many MANY tables vs one huge table? 哪个更快

我正在创建一个网站,我需要将用户的事件(类似于stackoverflow中的收件箱)存储在sql中。目前,我和我的队友正在争论最有效的方法;到目前为止,我们已经提出了两种替代方法:为每个用户创建一个新表,并将表名设为theirusername_activity。然后,当我需要获取他们的事件(发布、评论等)时,我只需获取该表并查看其中的行...最后我会有TON张table可能更快有一个名为activity的大表,其中有一个额外的字段用于用户名;当我想获取他们的事件时,我只需从该表中获取行"...WHEREusername=".$loggedInUser更少的table,更干净(假设我正确

sql - insert - 表中未记录的字段

INSERTINTO`jos1_content`(`title`,`introtext`,`fulltext`,`state`,`sectionid`,`catid`,`attribs`)VALUES($title,$introtext,$fulltext,1,1,$catid,5)查询由php脚本组成。变量的推导表明它们不为空。应phpMyAdmin的要求显示错误:1064-YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousen

sql - 在 MySQL 中盲目使用 INSERT 有缺点吗?

我经常想向表中添加一个值,或者在其键已存在时更新该值。这可以通过多种方式实现,假设在示例中的“user_id”和“pref_key”列上设置了主键或唯一键:1。盲插入,如果收到重复键错误则更新://TrytoinsertasanewvalueINSERTINTOmy_prefs(user_id,pref_key,pref_value)VALUES(1234,'show_help','true');//Ifaduplicate-keyerroroccursrunanupdatequeryUPDATEmy_prefsSETpref_value='true'WHEREuser_id=1234

mysql insert on duplicate key related deadlock

在日志中我有与此查询相关的死锁:INSERTINTO`driver_state`(id,state)VALUES('83799','waiting')ONDUPLICATEKEYUPDATEstate=IF(state='active',state,VALUES(state));确切错误:ER_LOCK_DEADLOCK:Deadlockfoundwhentryingtogetlock;tryrestartingtransaction我已尝试推理并理解此查询如何可能导致死锁,但还没有深入了解。表结构CREATETABLEIFNOTEXISTS`driver_state`(`id`int