上一篇
场景重现:
小张正用Excel手动录入500条用户数据,突然电脑蓝屏...😱 隔壁程序员老王探头说:"早该用SQLite了,一条INSERT
命令能顶你加班两小时!" 今天我们就来解锁这个让数据"乖乖排队"的神奇技能~
SQLite的INSERT
就像数据的"出生证明",专门负责把新记录送进数据库大家庭,基本语法简单到像说人话:
INSERT INTO 表名 (列1, 列2,...) VALUES (值1, 值2,...);
举个栗子 🌰:
假设有个users
表(包含id、name、age三列),新增一个叫"张三"的28岁用户:
INSERT INTO users (id, name, age) VALUES (1, '张三', 28);
💡 注意:文本值必须用单引号包裹,数字直接写
INSERT INTO products (product_id, name, price) VALUES (101, '无线耳机', 299.99);
优点:列顺序可自由调整,适合新增字段后的兼容
INSERT INTO products VALUES (102, '机械键盘', 199, '2025-08-20');
注意:必须提供所有列的值且顺序完全一致,像玩填字游戏不能出错!
INSERT INTO students (name, score) VALUES ('李雷', 85), ('韩梅梅', 92), ('小明', 78);
适用场景:初始化数据或数据迁移时,比单条插入快10倍以上 🚀
把A表的数据精选后插入B表:
INSERT INTO vip_users (user_id, level) SELECT id, '黄金会员' FROM users WHERE score > 90;
当字段设置了默认值,可以偷懒:
INSERT INTO orders (order_id, product_name) VALUES (1001, '智能手表'); -- 未指定的status自动赋默认值'待支付'
遇到主键重复时自动更新:
INSERT OR REPLACE INTO employees (id, name, dept) VALUES (5, '新员工小王', '技术部');
O'Reilly
要写成'O''Reilly'
(双写单引号) 'YYYY-MM-DD'
格式避免歧义 假设有个books
表(book_id, title, author, stock),请:
(答案见下方折叠区)
-- 1. 单条插入 INSERT INTO books VALUES (1, '三体', '刘慈欣', 50); -- 2. 批量插入 INSERT INTO books (book_id, title, author, stock) VALUES (2, '小王子', '圣埃克苏佩里', 30), (3, '红楼梦', '曹雪芹', 25); -- 3. 冲突更新 INSERT OR REPLACE INTO books VALUES (1, '三体', '刘慈欣', 60);
最后彩蛋 🥚:在SQLite中按住Ctrl+Enter
可以快速执行当前语句(具体取决于你的IDE),比鼠标点击快多啦!下次见~ ✨
(本文操作示例基于SQLite 3.42.0版本,2025年8月验证通过)
本文由 鄞采白 于2025-08-08发表在【云服务器提供商】,文中图片由(鄞采白)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://up.7tqx.com/wenda/566075.html
发表评论