MySQL主键的标识方法有多种,常见的有以下几种:
目前累计服务客户上千多家,积累了丰富的产品开发及服务经验。以网站设计水平和技术实力,树立企业形象,为客户提供成都网站建设、成都网站设计、网站策划、网页设计、网络营销、VI设计、网站改版、漏洞修补等服务。成都创新互联公司始终以务实、诚信为根本,不断创新和提高建站品质,通过对领先技术的掌握、对创意设计的研究、对客户形象的视觉传递、对应用系统的结合,为客户提供更好的一站式互联网解决方案,携手广大客户,共同发展进步。
1、自动增长(AUTO_INCREMENT)
2、指定值(NOT NULL UNIQUE)
3、组合键(多列组成)
4、UUID(通用唯一标识符)
下面分别介绍这几种方法的设置方式。
1. 自动增长(AUTO_INCREMENT)
使用AUTO_INCREMENT
属性,可以使得主键的值在插入数据时自动递增,这种方式适用于自增的整数作为主键的场景。
创建表时设置主键为自动增长:
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL );
插入数据时,不需要指定主键的值,数据库会自动为其分配一个递增的值:
INSERT INTO users (username, password) VALUES ('张三', '123456'); INSERT INTO users (username, password) VALUES ('李四', 'abcdef');
查询表中的数据,可以看到主键的值已经自动递增:
SELECT * FROM users;
2. 指定值(NOT NULL UNIQUE)
如果主键的值需要手动指定,可以使用NOT NULL
和UNIQUE
约束,这种方式适用于主键的值已知且不重复的场景。
创建表时设置主键为指定值:
CREATE TABLE orders ( order_id INT NOT NULL UNIQUE, user_id INT NOT NULL, product_name VARCHAR(50) NOT NULL, quantity INT NOT NULL, PRIMARY KEY (order_id) );
插入数据时,需要指定主键的值:
INSERT INTO orders (order_id, user_id, product_name, quantity) VALUES (1, 1, '产品A', 2); INSERT INTO orders (order_id, user_id, product_name, quantity) VALUES (2, 2, '产品B', 1);
查询表中的数据,可以看到主键的值已经按照指定的值插入:
SELECT * FROM orders;
3. 组合键(多列组成)
如果主键由多个列组成,可以使用组合键作为主键,这种方式适用于主键的值由多个列共同决定的场景。
创建表时设置主键为组合键:
CREATE TABLE employees ( department_id INT NOT NULL, employee_id INT NOT NULL, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, PRIMARY KEY (department_id, employee_id) );
插入数据时,需要指定主键的所有列的值:
INSERT INTO employees (department_id, employee_id, first_name, last_name) VALUES (1, 1001, '张', '三'); INSERT INTO employees (department_id, employee_id, first_name, last_name) VALUES (2, 1002, '李', '四');
查询表中的数据,可以看到主键的值已经按照指定的列插入:
SELECT * FROM employees;
本文题目:MySQL主键的标识方法大揭秘如何设置主键
当前路径:http://www.shufengxianlan.com/qtweb/news43/91493.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联