明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1202|回复: 2

快速往数据库写入一条简单的数据

[复制链接]
发表于 2024-4-7 11:47:18 | 显示全部楼层 |阅读模式
本帖最后由 dcl1214 于 2024-4-9 12:48 编辑

有时前端页面还没有开发出来,或者是由于某种原因导致数据库的数据还没有录入,但是lisp开发不想等待,此时您可以快速模拟数据,便于lisp开展工作,我写了一个简单的快速入库的函数,代码如下
  1. (defun $db-mo-ren-shu-ju$ (tbn lst / info sql v-mr vs zds)
  2.           ;往数据库写默认数据
  3.           ;调用示例($mo-ren-shu-ju$ tbn-cpzk nil)
  4.   (setq  v-mr (list "甲子乙丑海中金"     "丙寅丁卯炉中火"
  5.        "戊辰己巳大林木"     "庚午辛未路旁土"
  6.        "壬申癸酉剑锋金"     "甲戌乙亥山头火"
  7.        "丙子丁丑涧下水"     "戊寅己卯城头土"
  8.        "庚辰辛巳白蜡金"     "壬午癸未杨柳木"
  9.        "甲申乙酉泉中水"     "丙戌丁亥屋上土"
  10.        "戊子己丑霹雳火"     "庚寅辛卯松柏木"
  11.        "壬辰癸巳长流水"     "甲午乙未沙中金"
  12.        "丙申丁酉山下火"     "戊戌己亥平地木"
  13.        "庚子辛丑壁上土"     "壬寅癸卯金箔金"
  14.        "甲辰乙巳覆灯火"     "丙午丁未天河水"
  15.        "戊申己酉大驿土"     "庚戌辛亥钗钏金"
  16.        "壬子癸丑桑柘木"     "甲寅乙卯大溪水"
  17.        "丙辰丁巳沙中土"     "戊午己未天上火"
  18.        "庚申辛酉石榴木"     "壬戌癸亥大海水"
  19.        "乾"      "坤"     "屯"
  20.        "蒙"      "需"     "讼"
  21.        "师"      "比"     "小畜"
  22.        "履"      "泰"     "否"
  23.        "同人"    "大有"   "谦"
  24.        "豫"      "随"     "蛊"
  25.        "临"      "观"     "噬嗑"
  26.        "贲"      "剥"     "复"
  27.        "无妄"    "大畜"   "颐"
  28.        "大过"    "坎"     "离"
  29.        "咸"      "恒"     "遁"
  30.        "大壮"    "晋"     "明夷"
  31.        "家人"    "睽"     "蹇"
  32.        "解"      "损"     "益"
  33.        "夬"      "姤"     "萃"
  34.        "升"      "困"     "井"
  35.        "革"      "鼎"     "震"
  36.        "艮"      "渐"     "归妹"
  37.        "丰"      "旅"     "巽"
  38.        "兑"      "涣"     "节"
  39.        "中孚"    "小过"   "既济"
  40.        "未济"    "青龙"   "白虎"
  41.        "朱雀"    "玄武"   "太阳烛照"
  42.        "太阴幽荧"    "应龙"   "螣蛇"
  43.        "勾陈"    "白泽"   "麒麟"
  44.        "凤凰"    "水麒麟"   "赤焰兽"
  45.        "獬豸"
  46.       )
  47.   )
  48.   (setq info ($cha-xun-biao-xin$ tbn))
  49.   (setq
  50.     zds
  51.      (mapcar
  52.        (function
  53.    (lambda (a / typ)
  54.      (OR (setq typ (cdr (assoc "DATA_TYPE" a)))
  55.          (setq typ (cdr (assoc "TYPE" a)))
  56.      )
  57.      (IF
  58.        (AND
  59.          TYP
  60.          (WCMATCH
  61.      (STRCASE TYP)
  62.      "[,*VARCHAR*,*STRING*,STRING,*TEXT*,TEXT,CHAR,ENUM,TINYTEXT,LONGTEXT,MEDIUMTEXT,]"
  63.          )
  64.        )
  65.         (cdr (assoc "COLUMN_NAME" a))
  66.      )
  67.    )
  68.        )
  69.        info
  70.      )
  71.   )
  72.   (SETQ zds (VL-REMOVE NIL zds))
  73.   (setq  zds (vl-remove-if
  74.         (function
  75.     (lambda (a) (member a (list "id" "ID" "UID" "uid")))
  76.         )
  77.         zds
  78.       )
  79.   )
  80.   (if (and zds
  81.      v-mr
  82.      (setq vs (mapcar 'cons zds v-mr))
  83.      (setq sql (strcat "insert into "
  84.            tbn
  85.            "("
  86.            (merge-str-by-bar (mapcar 'car vs) ",")
  87.            ")values('"
  88.            (merge-str-by-bar (mapcar 'cdr vs) "','")
  89.            "')"
  90.          )
  91.      )
  92.       )
  93.     ($http-server$
  94.       (list
  95.   (cons "IP" (getenv "数据库地址"))
  96.   (cons "端口" ($locport$))
  97.   (cons "接口" ($fu-wu-qi-jie-kou$ "修改表数据"))
  98.           ;(cons "数据库路径" "C:\\ZXCAD.DB")
  99.   (cons "报文头"
  100.         (list (cons "Client-Auth" (getenv "ComputerName")))
  101.   )
  102.   (cons "Sql" sql)
  103.   (cons "http方法" "POST")
  104.   (cons "返回格式" "str")
  105.       )
  106.     )
  107.   )
  108. )

评分

参与人数 1明经币 +1 收起 理由
guosheyang + 1 赞一个!

查看全部评分

发表于 2024-4-7 11:52:41 | 显示全部楼层
强啊 我的梦想哥。现在我对lisp又有梦想了。
发表于 2024-4-7 21:36:51 | 显示全部楼层
感谢杜总分享代码!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-22 14:16 , Processed in 0.175484 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表