{"id":9441,"date":"2022-07-27T18:13:08","date_gmt":"2022-07-27T10:13:08","guid":{"rendered":"https:\/\/blog.ywdevops.cn\/?p=9441"},"modified":"2026-06-23T12:01:54","modified_gmt":"2026-06-23T04:01:54","slug":"gorm","status":"publish","type":"post","link":"https:\/\/blog.ywdevops.cn\/index.php\/2022\/07\/27\/gorm\/","title":{"rendered":"\u901a\u8fc7gorm\u64cd\u4f5cmysql"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">GORM\u662fGolang\u7684ORM(Object Relational Mapping)\u64cd\u4f5c\u5e93,\u4f7f\u7528\u4e0a\u4e3b\u8981\u5c31\u662f\u628astruct\u7c7b\u578b\u548c\u6570\u636e\u5e93\u8868\u8bb0\u5f55\u8fdb\u884c\u6620\u5c04\uff0c\u64cd\u4f5c\u6570\u636e\u5e93\u7684\u65f6\u5019\u4e0d\u9700\u8981\u76f4\u63a5\u624b\u5199Sql\u4ee3\u7801\uff0c\u672c\u4f8b\u5b50\u4ee5gorm\u7248\u672c1.23.8\u4e3a\u4f8b\u5b50<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">GORM\u5e93\u5730\u5740\uff1a<a href=\"https:\/\/github.com\/go-gorm\/gorm\">https:\/\/github.com\/go-gorm\/gorm<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b98\u65b9\u6587\u6863\u5730\u5740\uff1ahttps:\/\/gorm.io\/zh_CN\/docs\/<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u4e00\u3001gorm\u5b89\u88c5\uff1a<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u64cd\u4f5cMySQL\u9700\u8981\u5b89\u88c5\u4e24\u4e2a\u5305\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MySQL\u9a71\u52a8\u5305<\/li>\n\n\n\n<li>GORM\u5305 \u4f7f\u7528go get\u547d\u4ee4\u5b89\u88c5\u4f9d\u8d56\u5305<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/\u5b89\u88c5MySQL\u9a71\u52a8\ngo get -u gorm.io\/driver\/mysql\n\/\/\u5b89\u88c5gorm\u5305\ngo get -u gorm.io\/gorm<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u5bfc\u5165\u5305\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import (\n  \"gorm.io\/driver\/mysql\"\n  \"gorm.io\/gorm\"\n)<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u4e8c\u3001gorm\u6a21\u578b\u5b9a\u4e49\uff1a<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001ORM\u7b80\u4ecb\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ORM\u6846\u67b6\u64cd\u4f5c\u6570\u636e\u5e93\u90fd\u9700\u8981\u9884\u5148\u5b9a\u4e49\u6a21\u578b\uff0c\u6a21\u578b\u53ef\u4ee5\u7406\u89e3\u6210\u6570\u636e\u6a21\u578b\uff0c\u4f5c\u4e3a\u64cd\u4f5c\u6570\u636e\u5e93\u7684\u5a92\u4ecb<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u4ece\u6570\u636e\u5e93\u8bfb\u53d6\u7684\u6570\u636e\u4f1a\u5148\u4fdd\u5b58\u5230\u9884\u5148\u5b9a\u4e49\u7684\u6a21\u578b\u5bf9\u8c61\uff0c\u7136\u540e\u6211\u4eec\u5c31\u53ef\u4ee5\u4ece\u6a21\u578b\u5bf9\u8c61\u5f97\u5230\u6211\u4eec\u60f3\u8981\u7684\u6570\u636e<\/li>\n\n\n\n<li>\u63d2\u5165\u6570\u636e\u5230\u6570\u636e\u5e93\u4e5f\u662f\u5148\u65b0\u5efa\u4e00\u4e2a\u6a21\u578b\u5bf9\u8c61\uff0c\u7136\u540e\u628a\u60f3\u8981\u4fdd\u5b58\u7684\u6570\u636e\u5148\u4fdd\u5b58\u5230\u6a21\u578b\u5bf9\u8c61\uff0c\u7136\u540e\u628a\u6a21\u578b\u5bf9\u8c61\u4fdd\u5b58\u5230\u6570\u636e\u5e93<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">gorm\u6a21\u578b\u5b9a\u4e49\u662f\u901a\u8fc7struct\u5b9e\u73b0\u7684\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u53ef\u4ee5\u901a\u8fc7gorm\u5e93\u5b9e\u73b0struct\u7c7b\u578b\u548cmysql\u8868\u6570\u636e\u7684\u6620\u5c04<\/p>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1agorm\u8d1f\u8d23\u5c06\u5bf9\u6a21\u578b\u7684\u8bfb\u5199\u64cd\u4f5c\u7ffb\u8bd1\u6210sql\u8bed\u53e5\uff0c\u7136\u540egorm\u518d\u628a\u6570\u636e\u5e93\u6267\u884csql\u8bed\u53e5\u540e\u8fd4\u56de\u7684\u7ed3\u679c\u8f6c\u5316\u4e3a\u6211\u4eec\u5b9a\u4e49\u7684\u6a21\u578b\u5bf9\u8c61<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u6a21\u578b\u5b9a\u4e49\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">gorm\u6a21\u578b\u5b9a\u4e49\u4e3b\u8981\u5c31\u662f\u5728struct\u7c7b\u578b\u5b9a\u4e49\u7684\u57fa\u7840\u4e0a\u589e\u52a0\u5b57\u6bb5\u6807\u7b7e\u8bf4\u660e\u5b9e\u73b0\uff0c\u9996\u5148\u5b9a\u4e49\u4e00\u4e2a\u8ba2\u5355\u8868\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE TABLE `productorder` (\n  `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '\u81ea\u589eID\uff0c\u8ba2\u5355Id',\n  `name` varchar(50) NOT NULL COMMENT '\u8ba2\u5355\u540d\u79f0',\n  `quantity` varchar(50)  NOT NULL COMMENT '\u8ba2\u5355\u6570\u91cf',\n  `createtime` int NOT NULL DEFAULT 0  COMMENT '\u8ba2\u5355\u521b\u5efa\u65f6\u95f4',\n   PRIMARY KEY (`id`)\n  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT '\u5546\u54c1\u8ba2\u5355';\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6a21\u578b\u5b9a\u4e49\u5982\u4e0b\uff08\u6ce8\uff1a<strong>\u7ed3\u6784\u4f53\u5b57\u6bb5\u540d\u9996\u5b57\u6bcd\u4e00\u5b9a\u8981\u5927\u5199<\/strong>\uff09\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>type productorder struct {\n        ID         int       \/\/\u8868\u5b57\u6bb5\u540d\u4e3aid\n        Name       string    \/\/\u8868\u5b57\u6bb5\u540d\u4e3aname\n        Quantity   string    \/\/\u8868\u5b57\u6bb5\u540d\u4e3aquantity\n        Createtime int       \/\/\u8868\u5b57\u6bb5\u540d\u4e3acreate_time\n}\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u9ed8\u8ba4gorm\u5bf9struct\u5b57\u6bb5\u540d\u4f7f\u7528Snake Case\u547d\u540d\u98ce\u683c\u8f6c\u6362\u6210mysql\u8868\u5b57\u6bb5\u540d\uff0c\u56e0\u6b64\u8f6c\u6362\u540e\u90fd\u662f\u5c0f\u5199\u7684\u540d\u5b57\uff0c\u591a\u4e2a\u5355\u8bcd\u4e4b\u95f4\u7528\u4e0b\u5212\u7ebf\u5206\u9694\uff0c\u4f8b\u5982CreateTime  \u8f6c\u6362\u4e3a\u5c31\u662fcreate_time<\/p>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1aSnake Case\u547d\u540d\u98ce\u683c\uff0c\u5c31\u662f\u5404\u4e2a\u5355\u8bcd\u4e4b\u95f4\u7528\u4e0b\u5212\u7ebf\uff08_\uff09\u5206\u9694\uff0c\u4f8b\u5982\uff1a CreateTime\u7684Snake Case\u98ce\u683c\u547d\u540d\u4e3acreate_time<\/p>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1a\u5982\u679c\u7ed3\u6784\u4f53\u540d\u4e3aproductOrder\uff0c\u90a3\u4e48\u5bf9\u5e94\u7684\u6570\u636e\u5e93\u8868\u540d\u5c31\u662fproduct_order<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3\u3001gorm\u6a21\u578b\u6807\u7b7e\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8ff0\u6a21\u578b\u4e2dCreateTime\u6620\u5c04\u5230\u7684\u8868\u5b57\u6bb5\u4e3acreate_time\uff0c\u5982\u679c\u8981\u53d8\u6210\u6b63\u5e38\u7684createtime\uff0c\u53ef\u901a\u8fc7\u6a21\u578b\u6807\u7b7e\u5b9e\u73b0\uff0c\u8bed\u6cd5\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>gorm:\"\u6807\u7b7e\u5b9a\u4e49\"     \/\/\u591a\u4e2a\u6807\u7b7e\u5b9a\u4e49\u53ef\u4ee5\u4f7f\u7528\u5206\u53f7(;)\u5206\u9694<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">gorm\u5e38\u7528\u6807\u7b7e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\">\u6807\u7b7e<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u8bf4\u660e<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u4f8b\u5b50<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">column<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u6307\u5b9a\u5217\u540d<\/td><td class=\"has-text-align-center\" data-align=\"center\">gorm:&#8221;column:createtime&#8221;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">primaryKey<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u6307\u5b9a\u4e3b\u952e<\/td><td class=\"has-text-align-center\" data-align=\"center\">gorm:&#8221;column:id;primary_key&#8221;<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">&#8211;<\/td><td class=\"has-text-align-center\" data-align=\"center\">\u5ffd\u7565\u5b57\u6bb5<\/td><td class=\"has-text-align-center\" data-align=\"center\">gorm:&#8221;-&#8221;&nbsp;\u53ef\u4ee5\u5ffd\u7565struct\u5b57\u6bb5\uff0c\u88ab\u5ffd\u7565\u7684\u5b57\u6bb5\u4e0d\u53c2\u4e0egorm\u7684\u8bfb\u5199\u64cd\u4f5c<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0a\u8ff0\u6a21\u578b\u4fee\u6539\u540e\u7684\u5185\u5bb9\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"703\" height=\"297\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10.png\" alt=\"\" class=\"wp-image-9459\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10.png 703w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-300x127.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-600x253.png 600w\" sizes=\"auto, (max-width: 703px) 100vw, 703px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1a\u5728gorm\u548ccolumn\u4e2d\u4e0d\u80fd\u51fa\u73b0\u7a7a\u683c\uff0c\u5426\u5219\u4f1a\u5931\u6548<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4\u3001\u5b9a\u4e49\u8868\u540d\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u6a21\u578b\u5bf9\u5e94\u7684\u8868\u540d\u4e3a\u590d\u6570\u5f62\u5f0f\uff0c\u6bd4\u5982\u6a21\u578b\u540d\u4e3aproductorder\uff0c\u90a3\u4e48\u5bf9\u5e94\u7684\u8868\u540d\u4e3aproductorders\uff0c\u5982\u679c\u8981\u53bb\u6389\u590d\u6570\u5f62\u5f0f\uff0c\u6709\u4e24\u79cd\u65b9\u5f0f\uff1a<\/p>\n\n\n\n<p class=\"has-black-color has-text-color wp-block-paragraph\">\u7b2c\u4e00\u79cd\u65b9\u5f0f\uff0c\u901a\u8fc7\u8c03\u7528Tabler\u63a5\u53e3\u7684TableName()\u51fd\u6570\uff0c\u8fd4\u56de\u4e00\u4e2a\u65b0\u7684\u8868\u540d\uff0c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>func (productorder) TableName() string {\n\treturn \"productorder\"         \/\/\u8fd4\u56de\u5355\u6570\u5f62\u5f0f\u7684\u8868\u540d\n}\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u90fd\u7ed9\u6a21\u578b\u5b9a\u4e49\u8868\u540d\uff0c\u6709\u65f6\u5019\u5b9a\u4e49\u6a21\u578b\u53ea\u662f\u5355\u7eaf\u7684\u7528\u4e8e\u63a5\u6536\u624b\u5199sql\u67e5\u8be2\u7684\u7ed3\u679c\uff0c\u8fd9\u4e2a\u65f6\u5019\u662f\u4e0d\u9700\u8981\u5b9a\u4e49\u8868\u540d\uff1b\u624b\u52a8\u901a\u8fc7gorm\u51fd\u6570Table()\u6307\u5b9a\u8868\u540d\uff0c\u4e5f\u4e0d\u9700\u8981\u7ed9\u6a21\u578b\u5b9a\u4e49TableName\u51fd\u6570<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5728gorm 1.19\u7248\u672c\uff0cTableName\u65b9\u6cd5\u5728gorm\u76ee\u5f55\u4e0b\u7684scope.go\u91cc<\/li>\n\n\n\n<li>\u5728gorm 1.23\u7248\u672c, TableName\u65b9\u6cd5\u5728gorm\u76ee\u5f55\u4e0b\u7684schema.go\u91cc<\/li>\n<\/ul>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1aTableName()\u51fd\u6570\u4e00\u822c\u653e\u5728\u8868\u540d\u5bf9\u5e94\u7684\u7ed3\u6784\u4f53\u4e0b\u65b9\uff0c\u6bd4\u5982\u5982\u679c\u7ed3\u6784\u4f53\u5355\u72ec\u5b9a\u4e49\u5728\u4e00\u4e2amodel.go\u6587\u4ef6\u4e2d\uff0c\u90a3\u4e48TableName()\u51fd\u6570\u5c31\u653e\u5728\u5bf9\u5e94\u7684\u7ed3\u6784\u4f53\u4e0b\u65b9\u5c31\u884c\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"650\" height=\"319\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2026\/06\/7-1.png\" alt=\"\" class=\"wp-image-20523\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2026\/06\/7-1.png 650w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2026\/06\/7-1-300x147.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2026\/06\/7-1-600x294.png 600w\" sizes=\"auto, (max-width: 650px) 100vw, 650px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u7b2c\u4e8c\u79cd\u65b9\u5f0f<strong>\uff1a<\/strong>\u901a\u8fc7\u5728\u8fde\u63a5\u6570\u636e\u5e93\u65f6\u5b9a\u4e49SingularTable: true\u5b9e\u73b0\uff0c\u53ef\u53c2\u8003\u4e0b\u9762\u6587\u7ae0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u4e09\u3001gorm\u8fde\u63a5\u6570\u636e\u5e93\uff1a<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">gorm\u652f\u6301\u591a\u79cd\u6570\u636e\u5e93\uff0c\u672c\u6587\u4e3b\u8981\u8bb2\u89e3\u8fde\u63a5mysql\uff0c\u4e3b\u8981\u5206\u4e3a\u4e24\u4e2a\u6b65\u9aa4\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u914d\u7f6eDSN (Data Source Name)<\/li>\n\n\n\n<li>\u4f7f\u7528gorm.Open\u8fde\u63a5\u6570\u636e\u5e93<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u914d\u7f6eDSN\uff0c\u8bed\u6cd5\u683c\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;username&#91;:password]@]&#91;protocol&#91;(address)]]\/dbname&#91;?param1=value1&amp;...&amp;paramN=valueN]<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>        user := \"root\"          \/\/\u7528\u6237\n        password := \"123456789\" \/\/\u5bc6\u7801\n        dbName := \"test\"        \/\/\u6570\u636e\u5e93\u540d\n        host := \"127.0.0.1\"     \/\/\u4e3b\u673a\u540d\n        port := \"3306\"          \/\/\u7aef\u53e3\n        dsn := fmt.Sprintf(\"%s:%s@tcp(%s:%s)\/%s?charset=utf8&amp;parseTime=True&amp;loc=Local\", user, password, host, port, dbName)\n        \/\/charset=utf8 \u5ba2\u6237\u5355\u5b57\u7b26\u96c6\u7f16\u7801\u4e3autf8\n        \/\/parseTime=true,\u652f\u6301\u628a\u6570\u636e\u5e93datetime\u548cdate\u7c7b\u578b\u8f6c\u6362\u4e3agolang\u7684time.Time\u7c7b\u578b\n        \/\/loc=Local \u4f7f\u7528\u7cfb\u7edf\u672c\u5730\u5e02\u533a\n        \/\/readTimeout \u8bfb\u8d85\u65f6\u65f6\u95f4\uff0c0\u4ee3\u8868\u4e0d\u9650\u5236\uff0c\u672c\u4f8b\u5b50\u4e2d\u6ca1\u8bbe\u7f6e\u6b64\u53c2\u6570\uff0c\u53ef\u6839\u636e\u9700\u8981\u6dfb\u52a0\n        \/\/writeTimeout - \u5199\u8d85\u65f6\u65f6\u95f4\uff0c0\u4ee3\u8868\u4e0d\u9650\u5236\uff0c\u672c\u4f8b\u5b50\u4e2d\u6ca1\u8bbe\u7f6e\u6b64\u53c2\u6570\uff0c\u53ef\u6839\u636e\u9700\u8981\u6dfb\u52a0\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u4f7f\u7528gorm.Open\u8fde\u63a5\u6570\u636e\u5e93\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>        var err error\n        var db *grom.DB              \/\/\u5b9a\u4e49\u6307\u9488\u53d8\u91cf\n        db, err = gorm.Open(mysql.Open(dsn), &amp;gorm.Config{\n                NamingStrategy: schema.NamingStrategy{\n                        SingularTable: true,   \/\/\u8bbe\u7f6e\u8868\u540d\u4e3a\u5355\u6570\u5f62\u5f0f\n                        TablePrefix:   \"sys_\", \/\/\u8bbe\u7f6e\u8868\u524d\u7f00\n                },\n        })\n        if err != nil {\n                log.Fatal(err)\n        }\n<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>gorm.Open()\u8fd4\u56de\u7c7b\u578b\u5373\u4e3a*gorm.DB\u548cerror\uff0c\u53ef\u901a\u8fc7go doc gorm Open\u67e5\u8be2\u6587\u6863<\/li>\n\n\n\n<li>schema\u9700\u8981\u5bfc\u5165\u5305gorm.io\/gorm\/schema<\/li>\n\n\n\n<li>SingularTable\uff1a true  \u8bbe\u7f6e\u8868\u540d\u4e3a\u5355\u6570\u5f62\u5f0f\uff0c\u5373\u4e3a\u4e0a\u6587\u4e2d\u8bbe\u7f6e\u8868\u540d\u7684\u7b2c\u4e8c\u79cd\u65b9\u6cd5<\/li>\n\n\n\n<li>TablePrefix\uff1a\u8bbe\u7f6e\u8868\u524d\u7f00<\/li>\n<\/ul>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1agorm.Config{} \u5982\u679c\u6ca1\u6709\u7279\u522b\u8bbe\u7f6e\uff0c\u53ef\u4ee5\u7559\u7a7a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3\u3001\u8fde\u63a5\u6c60\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u9ad8\u5e76\u53d1\u5b9e\u8df5\u4e2d\uff0c\u4e3a\u4e86\u63d0\u9ad8\u6570\u636e\u5e93\u8fde\u63a5\u7684\u4f7f\u7528\u7387\uff0c\u907f\u514d\u91cd\u590d\u5efa\u7acb\u6570\u636e\u5e93\u8fde\u63a5\u5e26\u6765\u7684\u6027\u80fd\u6d88\u8017\uff0c\u4f1a\u7ecf\u5e38\u4f7f\u7528\u6570\u636e\u5e93\u8fde\u63a5\u6c60\u6280\u672f\u6765\u7ef4\u62a4\u6570\u636e\u5e93\u8fde\u63a5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u914d\u7f6e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>        sqlDB,_ := db.DB()\n        \/\/SetMaxIdleConns \u8bbe\u7f6e\u7a7a\u95f2\u8fde\u63a5\u6c60\u4e2d\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n        sqlDB.SetMaxIdleConns(10)\n        \/\/SetMaxOpenConns \u8bbe\u7f6e\u6253\u5f00\u6570\u636e\u5e93\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n        sqlDB.SetMaxOpenConns(100)\n        \/\/SetConnMaxLifetime \u8bbe\u7f6e\u4e86\u8fde\u63a5\u53ef\u590d\u7528\u7684\u6700\u5927\u65f6\u95f4\n        sqlDB.SetConnMaxLifetime(time.Hour)\n<\/code><\/pre>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1adb.DB()\u5c06\u8fd4\u56de\u4e00\u4e2a\u901a\u7528\u7684\u6570\u636e\u5e93\u63a5\u53e3*sql.DB,\u76f4\u63a5\u901a\u8fc7go doc sql\u5373\u53ef\u67e5\u770b\u7528\u6cd5\uff0c\u4f7f\u7528\u8fde\u63a5\u6c60\u6280\u672f\u540e\uff0c\u5343\u4e07\u4e0d\u8981\u4f7f\u7528\u5b8cdb\u540e\u8c03\u7528db.Close\u5173\u95ed\u6570\u636e\u5e93\u8fde\u63a5\uff0c\u8fd9\u6837\u4f1a\u5bfc\u81f4\u6574\u4e2a\u6570\u636e\u5e93\u8fde\u63a5\u6c60\u5173\u95ed\uff0c\u5bfc\u81f4\u8fde\u63a5\u6c60\u6ca1\u6709\u53ef\u7528\u7684\u8fde\u63a5\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b8c\u6574\u7684\u8fde\u63a5\u6570\u636e\u5e93\u5e76\u6267\u884c\u547d\u4ee4\u521b\u5efasql\u7684\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>1\tpackage main\n     2\t\n     3\timport (\n     4\t\t\"fmt\"\n     5\t\t\"gorm.io\/driver\/mysql\"\n     6\t\t\"gorm.io\/gorm\"\n     7\t\t\"gorm.io\/gorm\/schema\"\n     8\t\t\"log\"\n     9\t\t\"time\"\n    10\t)\n    11\t\n    12\t\/\/\u6ce8\u610f:\u5982\u679c\u6b64\u7ed3\u6784\u4f53\u9700\u8981\u5bfc\u51fa\uff0c\u90a3\u4e48productorder\u7684\u9996\u5b57\u6bcd\u9700\u8981\u5927\u5199\n    13\ttype productorder struct {\n    14\t\tID         int    `gorm:\"primary_key\"`\n    15\t\tName       string \/\/\u8868\u5b57\u6bb5\u540d\u4e3aname\n    16\t\tQuantity   string \/\/\u8868\u5b57\u6bb5\u540d\u4e3aquantity\n    17\t\tCreateTime int    `gorm:\"column:createtime\"`\n    18\t}\n    19\t\n    20\t\/\/func (productorder) TableName() string {\n    21\t\/\/\treturn \"productorder\"\n    22\t\/\/}\n    23\t\n    24\tvar db *gorm.DB\n    25\t\/\/\u5f00\u53d1\u65f6\uff0c\u4e00\u822c\u90fd\u662f\u5c06\u521d\u59cb\u5316sql\u8bed\u53e5\u653e\u5728init()\u51fd\u6570\u4e2d\uff0c\u5148\u6267\u884c\n    26\tfunc init() {\n    27\t\tuser := \"root\"             \/\/\u7528\u6237\n    28\t\tpassword := \"5182086abcD#\" \/\/\u5bc6\u7801\n    29\t\tdbName := \"test\"           \/\/\u6570\u636e\u5e93\u540d\n    30\t\thost := \"127.0.0.1\"        \/\/\u4e3b\u673a\u540d\n    31\t\tport := \"3306\"             \/\/\u7aef\u53e3\n    32\t\tdsn := fmt.Sprintf(\"%s:%s@tcp(%s:%s)\/%s?charset=utf8&amp;parseTime=True&amp;loc=Local\", user, password, host, port, dbName)\n    33\t\t\/\/charset=utf8 \u5ba2\u6237\u5355\u5b57\u7b26\u96c6\u7f16\u7801\u4e3autf8\n    34\t\t\/\/parseTime=true,\u652f\u6301\u628a\u6570\u636e\u5e93datetime\u548cdate\u7c7b\u578b\u8f6c\u6362\u4e3agolang\u7684time.Time\u7c7b\u578b\n    35\t\t\/\/loc=Local \u4f7f\u7528\u7cfb\u7edf\u672c\u5730\u5e02\u533a\n    36\t\t\/\/readTimeout \u8bfb\u8d85\u65f6\u65f6\u95f4\uff0c0\u4ee3\u8868\u4e0d\u9650\u5236\n    37\t\t\/\/writeTimeout - \u5199\u8d85\u65f6\u65f6\u95f4\uff0c0\u4ee3\u8868\u4e0d\u9650\u5236\n    38\t\tvar err error\n    39\t\tdb, err = gorm.Open(mysql.Open(dsn), &amp;gorm.Config{\n    40\t\t\tNamingStrategy: schema.NamingStrategy{    \/\/schema\u5305\u7684\u7ed3\u6784\u4f53NamingStrategy\n    41\t\t\t\tSingularTable: true,   \/\/\u8bbe\u7f6e\u8868\u540d\u4e3a\u5355\u6570\u5f62\u5f0f\n    42\t\t\t\tTablePrefix:   \"sys_\", \/\/\u8bbe\u7f6e\u8868\u524d\u7f00\n    43\t\t\t},\n    44\t\t})\n    45\t\tif err != nil {\n    46\t\t\tlog.Fatal(err)\n    47\t\t}\n    48\t\tsqlDB, err := db.DB()\n    49\t\t\/\/SetMaxIdleConns \u8bbe\u7f6e\u7a7a\u95f2\u8fde\u63a5\u6c60\u4e2d\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n    50\t\tsqlDB.SetMaxIdleConns(10)\n    51\t\t\/\/SetMaxOpenConns \u8bbe\u7f6e\u6253\u5f00\u6570\u636e\u5e93\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n    52\t\tsqlDB.SetMaxOpenConns(100)\n    53\t\t\/\/SetConnMaxLifetime \u8bbe\u7f6e\u4e86\u8fde\u63a5\u53ef\u590d\u7528\u7684\u6700\u5927\u65f6\u95f4\n    54\t\tsqlDB.SetConnMaxLifetime(time.Hour)\n    55\t}\n    56\tfunc main() {\n    57\t\tp := productorder{\n    58\t\t\tID:         1,\n    59\t\t\tName:       \"phone\",\n    60\t\t\tQuantity:   \"100\u90e8\",\n    61\t\t\tCreateTime: 20220728,\n    62\t\t}\n    63\t\tdb.Create(&amp;p)\n    64\t}\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u6ce8\u610f\uff1a\u5982\u679c\u7b2c20-22\u884c\u4e0d\u6ce8\u91ca\u6389\uff0c\u90a3\u4e48\u7b2c41\u548c42\u884c\u8bbe\u7f6e\u5c31\u4e0d\u4f1a\u751f\u6548\uff0c\u6ce8\u91ca\u540e\uff0c\u8868\u524d\u7f00\u5c31\u8981\u53d8\u4e3asys_productorder\uff0c\u8868\u540d\u5373\u4e3a\u6a21\u578b\u540d\u7684\u5355\u6570\u5f62\u5f0f\uff0c\u67e5\u8be2sql\u540e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"705\" height=\"164\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-2.png\" alt=\"\" class=\"wp-image-9473\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-2.png 705w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-2-300x70.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-2-600x140.png 600w\" sizes=\"auto, (max-width: 705px) 100vw, 705px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">4\u3001gorm\u8c03\u8bd5\u6a21\u5f0f:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e3a\u4e86\u65b9\u4fbf\u8c03\u8bd5\uff0c\u4e86\u89e3gorm\u64cd\u4f5c\u5230\u5e95\u6267\u884c\u4e86\u600e\u4e48\u6837\u7684sql\u8bed\u53e5\uff0c\u5f00\u53d1\u7684\u65f6\u5019\u9700\u8981\u6253\u5f00\u8c03\u8bd5\u65e5\u5fd7\uff0c\u8fd9\u6837gorm\u4f1a\u6253\u5370\u51fa\u6267\u884c\u7684\u6bcf\u4e00\u6761sql\u8bed\u53e5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f7f\u7528Debug\u51fd\u6570\u6267\u884c\u5373\u53ef\uff0c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">db.Debug().Create(&amp;p)      \/\/\u8c03\u7528Debug()\u540e\u5728\u8c03\u7528\u6267\u884c\u547d\u4ee4\u8bed\u53e5\uff0c\u6267\u884c\u5373\u53ef\u770b\u5230sql\u8bed\u53e5<\/p>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u8c03\u8bd5\u65f6\u5019\u53ef\u4ee5\u52a0Debug()\uff0c\u5b9e\u9645\u751f\u4ea7\u4e0d\u7528\u52a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u56db<strong>\u3001\u81ea\u52a8\u66f4\u65b0\u65f6\u95f4\uff1a<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u901a\u8fc7gorm\u5305\u7684Model\u5185\u7f6e\u597d\u7684\u5b57\u6bb5\u5b9e\u73b0\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">GORM \u7ea6\u5b9a\u4f7f\u7528 CreatedAt\u3001UpdatedAt \u8ffd\u8e2a\u521b\u5efa\/\u66f4\u65b0\u65f6\u95f4\u3002\u5982\u679c\u5b9a\u4e49\u4e86\u8fd9\u79cd\u5b57\u6bb5\uff0cGORM \u5728\u521b\u5efa\u3001\u66f4\u65b0\u65f6\u4f1a\u81ea\u52a8\u586b\u5145\u5f53\u524d\u65f6\u95f4\uff0c\u5c06\u4e0a\u9762\u4f8b\u5b50\u4e2d\u7684\u6a21\u578b\u4fee\u6539\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"172\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/2-3.png\" alt=\"\" class=\"wp-image-9483\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/2-3.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/2-3-300x73.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/2-3-600x146.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u521b\u5efa\u65f6\u95f4\u5b57\u6bb5\u4e3aCreatedAt\uff0c\u7c7b\u578b\u4e3atime.Time\uff0c\u6620\u5c04\u5230\u8868\u4e2d\u5b57\u6bb5\u4e3acreatedat<\/li>\n\n\n\n<li>\u66f4\u65b0\u65f6\u95f4\u5b57\u6bb5\u4e3aUpdatedAt\uff0c\u7c7b\u578b\u4e3atime.Time\uff0c\u6620\u5c04\u5230\u8868\u4e2d\u5b57\u6bb5\u4e3aupdatedat<\/li>\n<\/ul>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1a\u5b57\u6bb5\u4e0d\u53ef\u4ee5\u4e71\u5199\uff0c\u5fc5\u987b\u5199\u4e3aCreatedAt\uff0cUpdatedAt\uff0c\u8fd9\u4e24\u4e2a\u5b57\u6bb5\u662fgorm\u81ea\u5e26\u7684\u7ed3\u6784\u4f53Model\u4e2d\u7684\u5b57\u6bb5\uff0c\u5982\u679c\u4e0d\u91cd\u65b0\u5199\uff0c\u4e5f\u53ef\u4ee5\u76f4\u63a5\u901a\u8fc7\u7ee7\u627f\u7684\u65b9\u5f0f\uff0c\u53ea\u9700\u8981\u5728\u81ea\u5b9a\u4e49\u7ed3\u6784\u4f53\u4e2dgorm.Model\u5373\u53ef<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8868\u7ed3\u6784\u4e2d\u6dfb\u52a0\u5bf9\u5e94\u7684\u5b57\u6bb5\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"710\" height=\"239\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/3-2.png\" alt=\"\" class=\"wp-image-9485\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/3-2.png 710w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/3-2-300x101.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/3-2-600x202.png 600w\" sizes=\"auto, (max-width: 710px) 100vw, 710px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u5b9e\u4f8b\u5316\u7ed3\u6784\u4f53\u6a21\u578b\u7684\u65f6\u5019\uff0c\u4e0d\u9700\u8981\u6307\u5b9aCreatedAt\uff0cUpdatedAt\u5b57\u6bb5\uff0c\u53ea\u9700\u8981\u6307\u5b9a\u539f\u6709\u5b57\u6bb5\u5373\u53ef\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"704\" height=\"141\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/4-2.png\" alt=\"\" class=\"wp-image-9487\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/4-2.png 704w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/4-2-300x60.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/4-2-600x120.png 600w\" sizes=\"auto, (max-width: 704px) 100vw, 704px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c\u547d\u4ee4go run productorder.go\uff0c\u67e5\u770b\u8868\u4e2d\u6570\u636e\uff0c\u521b\u5efa\u65f6\u95f4\u548c\u66f4\u65b0\u65f6\u95f4\u90fd\u81ea\u52a8\u586b\u5145\u4e3a\u5f53\u524d\u65f6\u95f4\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"705\" height=\"155\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/5-2.png\" alt=\"\" class=\"wp-image-9489\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/5-2.png 705w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/5-2-300x66.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/5-2-600x132.png 600w\" sizes=\"auto, (max-width: 705px) 100vw, 705px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5c06\u547d\u4ee4\u4fee\u6539\u4e3a\u66f4\u65b0\u547d\u4ee4\uff0c\u5c06phone5\u6539\u4e3aphone1\uff0c\u547d\u4ee4\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>db.Debug().Model(&amp;productorder{}).Where(\"name = ?\",\"phone5\").Update(\"name\",\"phone1\")\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u518d\u6b21\u67e5\u770b\u8868\u4e2d\u6570\u636e\uff0c\u53d1\u73b0name\u6539\u4e86\u540e\uff0c\u5bf9\u5e94\u7684\u66f4\u65b0\u65f6\u95f4\u4e5f\u53d8\u5316\u4e86\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"145\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/6-2.png\" alt=\"\" class=\"wp-image-9491\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/6-2.png 709w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/6-2-300x61.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/6-2-600x123.png 600w\" sizes=\"auto, (max-width: 709px) 100vw, 709px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u901a\u8fc7\u7ed3\u6784\u4f53\u521b\u5efa\u6570\u636e\u53ef\u4ee5\u81ea\u52a8\u521b\u5efa\u65f6\u95f4(createdat)\uff0c\u4e0d\u9700\u8981\u6307\u5b9a\u5b57\u6bb5\uff0c\u4f46\u662f\u901a\u8fc7map\u521b\u5efa\u6570\u636e\u5219\u9700\u8981\u6307\u5b9acreatedat\uff0c\u5426\u5219\u65e0\u6cd5\u663e\u793a\u521b\u5efa\u65f6\u95f4\uff0c\u901a\u8fc7map\u66f4\u65b0\u6570\u636e\u4e0d\u9700\u8981\u6307\u5b9aupdatedat<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u901a\u8fc7\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5b9e\u73b0\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8981\u901a\u8fc7\u81ea\u5b9a\u4e49\u5b57\u6bb5\u5b9e\u73b0\uff0c\u9700\u8981\u914d\u7f6e autoCreateTime\u3001autoUpdateTime \u6807\u7b7e<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4fee\u6539\u7ed3\u6784\u4f53\u6a21\u578b\uff0c\u6dfb\u52a0\u81ea\u5b9a\u4e49\u521b\u5efa\u65f6\u95f4\u5b57\u6bb5\u548c\u81ea\u5b9a\u4e49\u4fee\u6539\u65f6\u95f4\u5b57\u6bb5\uff0c\u5e76\u914d\u7f6eautoCreateTime\u3001autoUpdateTime \u6807\u7b7e\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"177\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/7-2.png\" alt=\"\" class=\"wp-image-9493\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/7-2.png 840w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/7-2-300x63.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/7-2-768x162.png 768w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/7-2-600x126.png 600w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728\u6570\u636e\u5e93\u8868\u4e2d\u521b\u5efa\u5bf9\u5e94\u7684\u6620\u5c04\u5b57\u6bb5customupdatetime\u3001customcreatetime\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"733\" height=\"211\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/8-1.png\" alt=\"\" class=\"wp-image-9495\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/8-1.png 733w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/8-1-300x86.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/8-1-600x173.png 600w\" sizes=\"auto, (max-width: 733px) 100vw, 733px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u901a\u8fc7\u5982\u4e0b\u547d\u4ee4\u6267\u884c\u521b\u5efasql\uff0c\u4e0d\u9700\u8981\u6dfb\u52a0\u81ea\u5b9a\u4e49\u65f6\u95f4\u5b57\u6bb5\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"148\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/9-2.png\" alt=\"\" class=\"wp-image-9497\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/9-2.png 709w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/9-2-300x63.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/9-2-600x125.png 600w\" sizes=\"auto, (max-width: 709px) 100vw, 709px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u67e5\u770b\u6570\u636e\u5e93\u8868\uff0c\u770b\u5230\u65f6\u95f4\u5b57\u6bb5\u5df2\u7ecf\u81ea\u52a8\u586b\u5145\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"157\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-1.png\" alt=\"\" class=\"wp-image-9499\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-1.png 709w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-1-300x66.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/10-1-600x133.png 600w\" sizes=\"auto, (max-width: 709px) 100vw, 709px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u518d\u6b21\u6267\u884c\u5982\u4e0b\u547d\u4ee4\u66f4\u65b0\u6570\u636e\u5e93\u8868:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>db.Debug().Model(&amp;productorder{}).Where(\"name = ?\",\"phone5\").Update(\"name\",\"phone1\")\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u67e5\u770b\u6570\u636e\u5e93\u8868\u66f4\u65b0\u65f6\u95f4\u5b57\u6bb5\uff0c\u5df2\u7ecf\u6539\u53d8\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"711\" height=\"153\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-3.png\" alt=\"\" class=\"wp-image-9502\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-3.png 711w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-3-300x65.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/07\/1-3-600x129.png 600w\" sizes=\"auto, (max-width: 711px) 100vw, 711px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u4e94\u3001\u5e38\u7528\u7684gorm\u547d\u4ee4\u5982\u4e0b\uff1a<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">\u521b\u5efa\u6570\u636e<\/mark><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u6839\u636e\u7ed3\u6784\u4f53\u6307\u9488\u521b\u5efa\u5355\u6761\u8bb0\u5f55\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"705\" height=\"174\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/23.png\" alt=\"\" class=\"wp-image-9641\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/23.png 705w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/23-300x74.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/23-600x148.png 600w\" sizes=\"auto, (max-width: 705px) 100vw, 705px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1aproductorder\u4e3a\u7ed3\u6784\u4f53<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u6279\u91cf\u63d2\u5165\u6570\u636e\uff0c\u9700\u8981\u5c06\u4e00\u4e2a\u5207\u7247\u4f20\u9012\u7ed9Create\u65b9\u6cd5\uff0c\u9996\u5148\u770b\u4e0b\u6ca1\u6709\u6279\u91cf\u63d2\u5165\u6570\u636e\u4e4b\u524d\u7684\u8868\u5185\u5bb9\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"195\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-1.png\" alt=\"\" class=\"wp-image-9643\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-1.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-1-300x83.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-1-600x165.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b9a\u4e49\u7ed3\u6784\u4f53\u7c7b\u578b\u5207\u7247\uff0c\u5c06\u7ed3\u6784\u4f53\u6dfb\u52a0\u5230\u5207\u7247\u4e2d\uff0c\u7136\u540e\u63d2\u5165\u5230\u6570\u636e\u5e93\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"708\" height=\"309\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-3.png\" alt=\"\" class=\"wp-image-9645\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-3.png 708w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-3-300x131.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-3-600x262.png 600w\" sizes=\"auto, (max-width: 708px) 100vw, 708px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u63d2\u5165\u540e\u7684\u5185\u5bb9\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"213\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-3.png\" alt=\"\" class=\"wp-image-9649\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-3.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-3-300x90.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-3-600x181.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">3\u3001\u901a\u8fc7map\u6765\u521b\u5efa\u5355\u6761\u6570\u636e\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"211\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-3.png\" alt=\"\" class=\"wp-image-9660\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-3.png 709w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-3-300x89.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-3-600x179.png 600w\" sizes=\"auto, (max-width: 709px) 100vw, 709px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u9700\u8981\u901a\u8fc7Model\u65b9\u6cd5\u6267\u884c\u8981\u8fd0\u884c\u7684\u6570\u636e\u5e93\u64cd\u4f5c\u6a21\u578b\uff0c\u53ef\u4ee5\u7406\u89e3\u4e3a\u6307\u5b9a\u6570\u636e\u8868\uff0cCreate()\u4e2d\u5c3d\u91cf\u4f7f\u7528\u6307\u9488\uff0c\u672c\u4f8b\u5b50\u4e2d\u5fd8\u8bb0\u5199\u4e86\u6307\u9488\u7b26\u53f7&amp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u67e5\u770b\u6570\u636e\u5e93\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"231\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-2.png\" alt=\"\" class=\"wp-image-9662\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-2.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-2-300x98.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-2-600x196.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">4\u3001\u901a\u8fc7map\u521b\u5efa\u591a\u6761\u6570\u636e\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"973\" height=\"175\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/7-4.png\" alt=\"\" class=\"wp-image-9665\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/7-4.png 973w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/7-4-300x54.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/7-4-768x138.png 768w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/7-4-600x108.png 600w\" sizes=\"auto, (max-width: 973px) 100vw, 973px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u67e5\u770bsql\u6570\u636e\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"712\" height=\"270\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/8-3.png\" alt=\"\" class=\"wp-image-9667\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/8-3.png 712w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/8-3-300x114.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/8-3-600x228.png 600w\" sizes=\"auto, (max-width: 712px) 100vw, 712px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u901a\u8fc7map\u65b9\u5f0f\u521b\u5efa\u6570\u636e\u7684\u65f6\u5019\uff0c\u9700\u8981\u5728map\u4e2d\u5b9a\u4e49createdat\u5b57\u6bb5\uff0c\u5e76\u8bbe\u7f6e\u503c\u4e3atime.Now()\uff0c\u5982\u4e0a\u56fe\uff0c\u8fd9\u6837\u624d\u53ef\u4ee5\u5728\u6570\u636e\u5e93\u4e2d\u663e\u793a\u521b\u5efa\u65f6\u95f4\uff0c\u901a\u8fc7map\u66f4\u65b0\u6570\u636e\u5219\u4e0d\u9700\u8981\uff0c\u6267\u884c\u540e\u66f4\u65b0\u65f6\u95f4\u4f1a\u81ea\u52a8\u53d8\u5316<\/p>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">\u67e5\u8be2\u6570\u636e<\/mark><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u67e5\u8be2\u8868\u4e2d\u7b2c\u4e00\u6761\u6570\u636e\uff0c\u6ce8\u610f\u8981\u4f7f\u7528\u7ed3\u6784\u4f53\u6307\u9488\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"706\" height=\"120\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/9-3.png\" alt=\"\" class=\"wp-image-9670\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/9-3.png 706w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/9-3-300x51.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/9-3-600x102.png 600w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"777\" height=\"95\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/10-3.png\" alt=\"\" class=\"wp-image-9672\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/10-3.png 777w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/10-3-300x37.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/10-3-768x94.png 768w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/10-3-600x73.png 600w\" sizes=\"auto, (max-width: 777px) 100vw, 777px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u67e5\u8be2\u540e\u7684\u6570\u636e\u4f1a\u4fdd\u5b58\u5230\u6a21\u578b\u4e2d\uff0c\u4e5f\u5c31\u662f\u7ed3\u6784\u4f53\u4e2d\uff0c\u56e0\u6b64\u53ef\u76f4\u63a5\u83b7\u53d6\u503c<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u67e5\u8be2\u8868\u4e2d\u6700\u540e\u4e00\u6761\u6570\u636e\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"116\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/11-3.png\" alt=\"\" class=\"wp-image-9676\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/11-3.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/11-3-300x49.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/11-3-600x98.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1aFirst()\u548cLast()\u4f1a\u6839\u636e\u4e3b\u952e\u6392\u5e8f\uff0c\u5e76\u4e14\u53ea\u6709\u5728\u76ee\u6807struct\u662f\u6307\u9488\u6216\u8005\u901a\u8fc7db.Model()\u6307\u5b9amodel\u65f6\u5019\uff0c\u6b64\u65b9\u6cd5\u624d\u6709\u6548<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">First()\uff0cTake()\uff0cLast()\u65b9\u6cd5\u5982\u679c\u67e5\u8be2\u4e0d\u5230\u8bb0\u5f55\uff0c\u4f1a\u8fd4\u56deErrRecordNotFound\u9519\u8bef\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"191\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-4.png\" alt=\"\" class=\"wp-image-9689\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-4.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-4-300x81.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/3-4-600x162.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"706\" height=\"134\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/4-4.png\" alt=\"\" class=\"wp-image-9690\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/4-4.png 706w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/4-4-300x57.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/4-4-600x114.png 600w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u770b\u8bed\u53e5\u7ed3\u5c3e\u8981\u7528.Error\uff0c\u524d\u9762\u901a\u8fc7err\u63a5\u6536\uff0c\u5982\u679c\u8981\u907f\u514dErrRecordNotFound\u9519\u8bef\uff0c\u53ef\u4ee5\u4f7f\u7528\u4e0b\u9762\u7684Find()\u65b9\u6cd5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3\u3001\u67e5\u8be2\u5168\u90e8\u6570\u636e\uff0c\u7528Find()\u65b9\u6cd5\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"707\" height=\"158\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/12-3.png\" alt=\"\" class=\"wp-image-9680\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/12-3.png 707w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/12-3-300x67.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/12-3-600x134.png 600w\" sizes=\"auto, (max-width: 707px) 100vw, 707px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd0\u884c\u540e\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"757\" height=\"260\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/13-2.png\" alt=\"\" class=\"wp-image-9682\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/13-2.png 757w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/13-2-300x103.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/13-2-600x206.png 600w\" sizes=\"auto, (max-width: 757px) 100vw, 757px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1aFind()\u65b9\u6cd5\u53ef\u4ee5\u63a5\u53d7struct\u548cslice\u6570\u636e<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">5\u3001\u67e5\u8be2\u5168\u90e8\u6570\u636e\u4e2d\uff0cname=phone5\u7684\u6570\u636e\uff0c\u901a\u8fc7\u5207\u7247\u904d\u5386\u51fa\u6765\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"710\" height=\"153\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-2.png\" alt=\"\" class=\"wp-image-9685\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-2.png 710w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-2-300x65.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/1-2-600x129.png 600w\" sizes=\"auto, (max-width: 710px) 100vw, 710px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"751\" height=\"147\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-4.png\" alt=\"\" class=\"wp-image-9686\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-4.png 751w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-4-300x59.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/2-4-600x117.png 600w\" sizes=\"auto, (max-width: 751px) 100vw, 751px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">6\u3001\u901a\u8fc7Error\u6765\u5224\u65ad\u8bed\u6cd5\u662f\u5426\u9519\u8bef\uff0c\u4e0b\u9762\u4f30\u8ba1\u5c06=\u5199\u6210==\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"706\" height=\"198\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-4.png\" alt=\"\" class=\"wp-image-9694\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-4.png 706w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-4-300x84.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/5-4-600x168.png 600w\" sizes=\"auto, (max-width: 706px) 100vw, 706px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u6267\u884c\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"712\" height=\"183\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-3.png\" alt=\"\" class=\"wp-image-9695\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-3.png 712w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-3-300x77.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/08\/6-3-600x154.png 600w\" sizes=\"auto, (max-width: 712px) 100vw, 712px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">7\u3001\u901a\u8fc7Select\u6839\u636eWhere\u6761\u4ef6\u67e5\u8be2id\u5b57\u6bb5\u6570\u636e\uff0c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"761\" height=\"286\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/11.png\" alt=\"\" class=\"wp-image-10431\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/11.png 761w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/11-300x113.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/11-600x225.png 600w\" sizes=\"auto, (max-width: 761px) 100vw, 761px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd0\u884c\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"141\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/12.png\" alt=\"\" class=\"wp-image-10433\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/12.png 754w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/12-300x56.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/11\/12-600x112.png 600w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1a\u4e0a\u56fe\u4e2d\u6839\u636eSelect\u6765\u67e5\u8be2id\u5b57\u6bb5\uff0c\u90a3\u4e48\u5b9e\u9645\u67e5\u8be2\u5230\u6570\u636e\u540e\uff0c\u4f1a\u5c06id\u5b57\u6bb5\u6620\u5c04\u5230\u7ed3\u6784\u4f53\u6a21\u578b\u7684ID\u5b57\u6bb5\uff0c\u5176\u4f59\u7684\u5b57\u6bb5\u5e76\u6ca1\u6709\u67e5\u8be2\uff0c\u56e0\u6b64\u5176\u4f59\u5b57\u6bb5\u7684\u503c\u8fd8\u662f\u9ed8\u8ba4\u7684\u96f6\u503c\uff0c\u5982\u679c\u6b64\u65f6\u6253\u5370SystemType\u7684\u503c\u5c06\u4e3a\u7a7a\u7684\u5b57\u7b26\u4e32(\u5982\u679c\u662f\u5168\u90e8\u67e5\u8be2\uff0c\u90a3\u4e48\u6bcf\u4e2a\u5b57\u6bb5\u90fd\u53ef\u4ee5\u6253\u5370\u51fa\u6765\u503c)<\/p>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">\u66f4\u65b0\u6570\u636e<\/mark><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u672c\u4f8b\u5b50\u4ee5\u6570\u636e\u5e93test\u4e2d\u7684\u8868abc\u4e3a\u4f8b\u5b50\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"710\" height=\"200\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/5.png\" alt=\"\" class=\"wp-image-10178\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/5.png 710w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/5-300x85.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/5-600x169.png 600w\" sizes=\"auto, (max-width: 710px) 100vw, 710px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u66f4\u65b0\u591a\u4e2a\u5217\u503c\uff1a<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4e0b\u9762\u4f8b\u5b50\u8868\u793a\u66f4\u65b0id\u4e3a1\u5217\u540d\u4e3asystem_type\u548cip_address\u5217\u7684\u503c\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"710\" height=\"111\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/3.png\" alt=\"\" class=\"wp-image-10174\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/3.png 710w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/3-300x47.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/3-600x94.png 600w\" sizes=\"auto, (max-width: 710px) 100vw, 710px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd0\u884c\u7ed3\u679c\u5982\u4e0b\uff0c\u5df2\u7ecf\u66f4\u65b0\u6210\u529f\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"712\" height=\"183\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/6-1.png\" alt=\"\" class=\"wp-image-10179\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/6-1.png 712w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/6-1-300x77.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/6-1-600x154.png 600w\" sizes=\"auto, (max-width: 712px) 100vw, 712px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\u610f\uff1a\u66f4\u65b0\u591a\u4e2a\u5217\u7528\u7684\u662fUpdates\u65b9\u6cd5\uff0c<code>Updates<\/code>&nbsp;\u65b9\u6cd5\u652f\u6301&nbsp;<code>struct<\/code>&nbsp;\u548c&nbsp;<code>map[string]interface{}<\/code>&nbsp;\u53c2\u6570\uff0c\u5f53\u4f7f\u7528struct\u66f4\u65b0\u65f6\uff0cGORM\u53ea\u4f1a\u66f4\u65b0\u975e\u96f6\u503c\u7684\u5b57\u6bb5<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u66f4\u65b0\u5355\u4e2a\u5217\u503c<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd8\u662f\u4ee5\u4e0a\u56fe\u4e2d\u4e3a\u4f8b\uff0c\u66f4\u65b0id\u4e3a1\u7684\u5217hostname\u7684\u503c\u4e3awindow100\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"708\" height=\"65\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/7-1.png\" alt=\"\" class=\"wp-image-10182\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/7-1.png 708w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/7-1-300x28.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/7-1-600x55.png 600w\" sizes=\"auto, (max-width: 708px) 100vw, 708px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u8fd0\u884c\u540e\u7ed3\u679c\u5982\u4e0b\uff0c\u5df2\u7ecf\u66f4\u65b0\u6210\u529f\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"708\" height=\"168\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/8.png\" alt=\"\" class=\"wp-image-10183\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/8.png 708w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/8-300x71.png 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2022\/10\/8-600x142.png 600w\" sizes=\"auto, (max-width: 708px) 100vw, 708px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a\u66f4\u65b0\u5355\u4e2a\u5217\u7528\u7684\u662fupdate\uff0c\u5e76\u4e14\u9700\u8981\u6307\u5b9a\u5b57\u6bb5\u540dhostname<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u66f4\u591a\u7528\u6cd5\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/\u67e5\u8be2\u5168\u90e8\u6570\u636e\u4e2d\uff0cname=phone5\u7684\u6570\u636e\u7684\u7b2c\u4e00\u6761\u6570\u636e\ndb.Where(\"name = ?\",\"phone5\").First(&amp;p)\n\/\/\u67e5\u8be2\u5168\u90e8\u6570\u636e\u4e2d\uff0cname\u4e0d\u7b49\u4e8ephone5\u7684\u6240\u6709\u8bb0\u5f55\ndb.Where(\"name &lt;&gt; ?\",\"phone5\").Find(&amp;p)<\/code><\/pre>\n\n\n\n<p class=\"has-text-align-center wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\"><strong>\u6267\u884c\u539f\u751fSQL<\/strong><\/mark><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u539f\u751fSQL\u5c31\u662f\u76f4\u63a5\u64cd\u4f5c\u6570\u636e\u5e93\u7684SQL\u8bed\u53e5\uff0c\u901a\u8fc7gorm\u6267\u884c\u6b64\u8bed\u53e5\uff0c\u6307\u5b9a\u539f\u751fSQL\u6709\u4e24\u79cd\u65b9\u5f0f\uff0c\u4e00\u79cd\u662fRaw()\uff0c\u4e00\u79cd\u662fExec()<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\"><strong>\u901a\u8fc7Raw()\u6765\u6267\u884cSQL\uff1a<\/strong><\/mark><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u9996\u5148\u67e5\u770b\u6570\u636e\u5e93temp_database\u7684\u8868role\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"177\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/15.jpg\" alt=\"\" class=\"wp-image-16234\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/15.jpg 700w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/15-300x76.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/15-600x152.jpg 600w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u5b9a\u4e49\u7ed3\u6784\u4f53\uff0c\u67e5\u8be2\u6570\u636e\u5e93\u83b7\u53d6role_name\u7684\u503c\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"698\" height=\"95\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1.jpg\" alt=\"\" class=\"wp-image-16236\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1.jpg 698w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-300x41.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-600x82.jpg 600w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">\u5b9a\u4e49\u7ed3\u6784\u4f53\u5207\u7247\uff0c\u7528\u4e8e\u5b58\u50a8\u4ece\u6570\u636e\u5e93\u4e2d\u67e5\u8be2\u7684\u6570\u636e\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"122\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2.jpg\" alt=\"\" class=\"wp-image-16237\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2.jpg 700w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-300x52.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-600x105.jpg 600w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>39\u884c\uff1a\u901a\u8fc7db.Raw()\u6765\u6267\u884c\u539f\u751fSQL\uff0c\u901a\u8fc7Scan\u6620\u5c04\u5230\u5bf9\u5e94\u7684\u5207\u7247\u4e2d<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u6700\u540e\u6253\u5370\u7684\u7ed3\u679c\u5c31\u662f\u7ed3\u6784\u4f53\u5207\u7247\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"697\" height=\"68\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3.jpg\" alt=\"\" class=\"wp-image-16238\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3.jpg 697w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-300x29.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-600x59.jpg 600w\" sizes=\"auto, (max-width: 697px) 100vw, 697px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001\u6839\u636e\u6761\u4ef6\uff0c\u83b7\u53d6id\u4e3a10000\u7684\u7528\u6237\u89d2\u8272\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"699\" height=\"123\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4.jpg\" alt=\"\" class=\"wp-image-16239\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4.jpg 699w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-300x53.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-600x106.jpg 600w\" sizes=\"auto, (max-width: 699px) 100vw, 699px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"699\" height=\"73\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/5.jpg\" alt=\"\" class=\"wp-image-16241\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/5.jpg 699w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/5-300x31.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/5-600x63.jpg 600w\" sizes=\"auto, (max-width: 699px) 100vw, 699px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">3\u3001\u901a\u8fc7\u4e24\u4e2a\u6761\u4ef6\u8fdb\u884c\u5224\u65ad\uff0c\u5e76\u901a\u8fc7query\u6765\u5206\u884c\u5199\u8bed\u53e5\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"696\" height=\"231\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/6.jpg\" alt=\"\" class=\"wp-image-16243\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/6.jpg 696w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/6-300x100.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/6-600x199.jpg 600w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1a10000\u548c&#8221;init&#8221;\u5206\u522b\u5bf9\u5e94id\u548crole_flag\u540e\u9762\u7684\u503c<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4\u3001\u901a\u8fc7db.Raw()\u6765\u6307\u5b9aupdate\u8bed\u53e5\uff0c\u5c06id\u4e3a10000\u7684role_flag\u4fee\u6539\u4e3aabcd\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"698\" height=\"233\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/7-1.jpg\" alt=\"\" class=\"wp-image-16246\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/7-1.jpg 698w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/7-1-300x100.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/7-1-600x200.jpg 600w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"696\" height=\"171\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-1.jpg\" alt=\"\" class=\"wp-image-16247\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-1.jpg 696w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-1-300x74.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-1-600x147.jpg 600w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-red-color\">\u901a\u8fc7Exec()\u6307\u5b9aSQL\uff1a<\/mark><\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1\u3001\u6307\u5b9aupdate\u547d\u4ee4\uff0c\u4fee\u6539id\u4e3a10000\u7684role_flag\u7684\u503c\u4e3agong\uff0c\u5982\u56fe:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"698\" height=\"186\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-2.jpg\" alt=\"\" class=\"wp-image-16249\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-2.jpg 698w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-2-300x80.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/1-2-600x160.jpg 600w\" sizes=\"auto, (max-width: 698px) 100vw, 698px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"694\" height=\"151\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-1.jpg\" alt=\"\" class=\"wp-image-16250\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-1.jpg 694w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-1-300x65.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/2-1-600x131.jpg 600w\" sizes=\"auto, (max-width: 694px) 100vw, 694px\" \/><\/figure>\n\n\n\n<p class=\"has-luminous-vivid-amber-background-color has-background wp-block-paragraph\">\u6ce8\uff1adb.Exec()\u540e\u662f\u6ca1\u6709Scan()\u7684\uff0c\u6b64\u5904\u548cRaw()\u4e0d\u4e00\u6837\u7684<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2\u3001gorm\u4e5f\u652f\u6301\u8868\u8fbe\u5f0f\uff0c\u53ef\u8fdb\u884c\u8fd0\u7b97\uff0c\u4e0b\u9762\u4fee\u6539id\u4e3a\u8868\u8fbe\u5f0f\u7684\u503c\uff0c\u5982\u56fe\uff1a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"696\" height=\"193\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-1.jpg\" alt=\"\" class=\"wp-image-16253\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-1.jpg 696w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-1-300x83.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/3-1-600x166.jpg 600w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"696\" height=\"161\" src=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-1.jpg\" alt=\"\" class=\"wp-image-16254\" srcset=\"https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-1.jpg 696w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-1-300x69.jpg 300w, https:\/\/blog.ywdevops.cn\/wp-content\/uploads\/2024\/03\/4-1-600x139.jpg 600w\" sizes=\"auto, (max-width: 696px) 100vw, 696px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Raw()\u548cExec()\u7684\u533a\u522b\uff1a<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Raw() \uff1a\u53ef\u6267\u884c\u539f\u751fSQL\u6216\u53ef\u6267\u884c\u547d\u4ee4\uff0c\u5e76\u8fd4\u56de\u7ed3\u679c\u6216\u5f71\u54cd\u7684\u884c\u6570\uff0c\u7136\u540e\u8c03\u7528Scan()\u5c06\u7ed3\u679c\u6620\u5c04\u5230\u7ed3\u6784\u4f53\u4e2d\uff0c\u4e00\u822c\u7528\u4e8e\u67e5\u8be2\u6570\u636eSELECT<\/li>\n\n\n\n<li>Exec() \uff1a\u53ef\u6267\u884c\u539f\u751fSQL\u6216\u53ef\u6267\u884c\u547d\u4ee4\uff0c\u65e0\u9700\u6620\u5c04\u5230\u7ed3\u6784\u4f53\uff0c\u4e0d\u8fd4\u56de\u7ed3\u679c\uff0c\u4e00\u822c\u7528\u4e8eINSERT\u3001update\u3001delete\u8bed\u53e5<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u4f8b\u53e5\uff1a\u901a\u8fc7RAW()\u6267\u884c\u539f\u751fSQL\u6765\u5224\u65ad\u4e3b\u4ece\u72b6\u6001\uff0c\u5982\u4e0b\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>package main\n\nimport (\n\t\"fmt\"\n\t\"gorm.io\/driver\/mysql\"\n\t\"gorm.io\/gorm\"\n\t\"log\"\n\t\"time\"\n)\n\n\/\/ \u6b64\u5904\u7684\u7ed3\u6784\u4f53\u540d\u53ef\u81ea\u5b9a\u4e49\ntype slavestatus struct {\n\tSlaveIORunning      string `gorm:\"column:Slave_IO_Running\"`\n\tSlaveSQLRunning     string `gorm:\"column:Slave_SQL_Running\"`\n\tSecondsBehindMaster int    `gorm:\"column:Seconds_Behind_Master\"`\n}\n\nvar db *gorm.DB\n\nfunc init() {\n\tuser := \"root\"\n\tpassword := \"Abcd1234\"\n\tdbName := \"mysql\"    \/\/\u6b64\u65f6\u8fd9\u4e2a\u5e93\u540d\u4e5f\u53ef\u4ee5\u968f\u4fbf\u5199\uff0c\u53ea\u8981\u5b58\u5728\u5c31\u884c\n\thost := \"127.0.0.1\"\n\tport := \"3306\"\n\tdsn := fmt.Sprintf(\"%s:%s@tcp(%s:%s)\/%s?charset=utf8&amp;parseTime=True&amp;loc=Local\", user, password, host, port, dbName)\n\tvar err error\n\tdb, err = gorm.Open(mysql.Open(dsn), &amp;gorm.Config{})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\tsqlDB, err := db.DB()\n\t\/\/SetMaxIdleConns \u8bbe\u7f6e\u7a7a\u95f2\u8fde\u63a5\u6c60\u4e2d\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n\tsqlDB.SetMaxIdleConns(10)\n\t\/\/SetMaxOpenConns \u8bbe\u7f6e\u6253\u5f00\u6570\u636e\u5e93\u8fde\u63a5\u7684\u6700\u5927\u6570\u91cf\n\tsqlDB.SetMaxOpenConns(100)\n\t\/\/SetConnMaxLifetime \u8bbe\u7f6e\u4e86\u8fde\u63a5\u53ef\u590d\u7528\u7684\u6700\u5927\u65f6\u95f4\n\tsqlDB.SetConnMaxLifetime(time.Hour)\n}\nfunc main() {\n\tvar ss slavestatus\n\tdb.Raw(\"show slave status\").Scan(&amp;ss)\n\tfmt.Println(\"\u4ece\u5e93IO\u7ebf\u7a0b:\", ss.SlaveIORunning)\n\tfmt.Println(\"\u4ece\u5e93SQL\u7ebf\u7a0b:\", ss.SlaveSQLRunning)\n\tfmt.Println(\"\u4ece\u5e93\u843d\u540e\u4e3b\u5e93\u65f6\u95f4:\", ss.SecondsBehindMaster)\n}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>GORM\u662fGolang\u7684ORM(Object Relational Mapping)\u64cd\u4f5c\u5e93,\u4f7f\u7528\u4e0a\u4e3b\u8981\u5c31\u662f\u628as [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":9443,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[111,23],"tags":[],"class_list":["post-9441","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-go","category-rong"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":8}},"_links":{"self":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/9441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/comments?post=9441"}],"version-history":[{"count":107,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/9441\/revisions"}],"predecessor-version":[{"id":20524,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/posts\/9441\/revisions\/20524"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/media\/9443"}],"wp:attachment":[{"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/media?parent=9441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/categories?post=9441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ywdevops.cn\/index.php\/wp-json\/wp\/v2\/tags?post=9441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}