dm中php函数dm_insert_id的使用

dm中php函数dm_insert_id的使用

      • 一、操作环境
      • 二、关于dm_insert_id
      • 三、在脚本中使用dm_insert_id
      • 四、使用sql语句对比效果

一、操作环境

环境信息

环境 版本
数据库 1-2-46-21.08.26-146366-10022-ENT
Php PHP 7.4.27

二、关于dm_insert_id

从程序员手册查看释义:
dm_insert_id —取得上一步 INSERT 操作产生的 ID

也就是取得自增列的插入值;

准备一个表product1
设置product1的discount列为自增列

CREATE TABLE "SYSDBA"."PRODUCT1"  
(  "NAME" VARCHAR(20),  
"AUTHOR" VARCHAR(20), 
 "PUBLISHER" VARCHAR(20),  
 "PUBLISHTIME" TIMESTAMP(6), 
  "DISCOUNT" INT IDENTITY(1, 1) NOT NULL,  
  "DESCRIPTION" VARCHAR(4000), 
   "PHOTO" CLOB,  
   "SELLSTARTTIME" TIMESTAMP(6))
    STORAGE(ON "MAIN", CLUSTERBTR) ;

三、在脚本中使用dm_insert_id

dm中php函数dm_insert_id的使用_第1张图片dm中php函数dm_insert_id的使用_第2张图片

四、使用sql语句对比效果

脚本如下:


 $link = dm_connect("localhost", "SYSDBA", "SYSDBA")
 or die("Could not connect : " . dm_error());
 print "Connected successfully"."\n";
 /* 执行 SQL 查询 */
 $query = " INSERT INTO product1(name,author,publisher,publishtime,description,photo,sellstarttime)
VALUES('三国演义','罗贯中','中华书局','2005-04-01','《三国演义》是中国第一部长篇章回体小说!',null,'2006-03-20')";
 $result = dm_exec($link,$query) or die("Query failed : " . dm_error());


  print "insert_id:".dm_insert_id($link)."\n";
  $resp=dm_insert_id($link);


  $query2 = "select @@IDENTITY as id";

  $resp2=dm_exec($link,$query2);
  $result2=dm_result($resp2,1);
   print "resp:"."$resp"."\n"."result2:"."$result2"."\n";
 /* 释放资源 */
 dm_free_result($result);
 dm_free_result($resp2);
 /* 断开连接 */
 dm_close($link);
?>

运行脚本:
dm中php函数dm_insert_id的使用_第3张图片dm中php函数dm_insert_id的使用_第4张图片

你可能感兴趣的:(DM8,php,数据库,开发语言,达梦数据库)