当前位置: 首页 > article >正文

SQL自学,mysql从入门到精通 --- 第 14天,主键、外键的使用

1.主键

PRIMARY KEY 主键的使用

字段值不允许重复,且不允许赋NULL值

创建主键

root@mysqldb 10:11:  [d1]> CREATE TABLE t3(
    -> name varchar(10) PRIMARY KEY,
    -> age int,
    -> class varchar(8)
    -> );
Query OK, 0 rows affected (0.01 sec)

root@mysqldb 10:12:  [d1]> create table  t4 (
    -> name char(10), pay float(7,2) default  20000,
    -> primary key(name)
    -> );
Query OK, 0 rows affected (0.01 sec)


-- 创建复合主键
root@mysqldb 10:15:  [d1]> create  table t5( 
    -> cip char(15) , port int  , stuat enum("yes","no") , 
    -> primary key(cip , port ) );
Query OK, 0 rows affected (0.01 sec)

删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

root@mysqldb 10:16:  [d1]> ALTER TABLE t4 DROP PRIMARY KEY;
Query OK, 0 rows affected (0.15 sec)
Records: 0  Duplicates: 0  Warnings: 0


-- 在已有的表中添加主键
root@mysqldb 10:20:  [d1]> DESC t5;
+-------+------------------+------+-----+---------+-------+
| Field | Type             | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+-------+
| cip   | char(15)         | NO   | PRI | NULL    |       |
| port  | int(11)          | NO   | PRI | NULL    |       |
| stuat | enum('yes','no') | YES  |     | NULL    |       |
+-------+------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

root@mysqldb 10:21:  [d1]> ALTER TABLE t5 DROP PRIMARY KEY;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

root@mysqldb 10:21:  [d1]> DESC t5;
+-------+------------------+------+-----+---------+-------+
| Field | Type             | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+-------+
| cip   | char(15)         | NO   |     | NULL    |       |
| port  | int(11)          | NO   |     | NULL    |       |
| stuat | enum('yes','no'

http://www.kler.cn/a/539736.html

相关文章:

  • 《深度学习》——pytorch框架及项目
  • 每日一题——没有重复项数字的全排列
  • 每日Attention学习22——Inverted Residual RWKV
  • Http 的响应码有哪些? 分别代表的是什么?
  • 练习题(2025.2.9)
  • Django开发入门 – 0.Django基本介绍
  • Gitlab中如何进行仓库迁移
  • XILINX硬件设计-(1)LVDS接口总结
  • 【Arxiv 大模型最新进展】TableRAG: 提高大语言模型在理解和推理大规模表格数据的效率和性能
  • oscp备考,oscp系列——VulnOSv2靶场,两种方法获取低权限shell
  • 三星OEM版SSD固态硬盘Model码对应关系
  • 【Spring Boot】Spring Boot解决循环依赖
  • c++计算机教程
  • 5G技术解析:从核心概念到关键技术
  • Java 中 ArrayList 和 LinkedList 有什么区别?
  • 【WB 深度学习实验管理】利用 Hugging Face 实现高效的自然语言处理实验跟踪与可视化
  • SQL自学,mysql从入门到精通 --- 第 5 天,对函数的处理
  • 神经网络|(九)概率论基础知识-泊松分布及python仿真
  • MySQL与钉钉数据融合,加速企业付款退款自动化进程
  • Spring AI -使用Spring快速开发ChatGPT应用
  • 鸿蒙NEXT API使用指导之文件压缩和邮件创建
  • 【Spring】Spring MVC入门(一)
  • 如何将 Jupyter Notebook (.ipynb) 文件转换为 Python (.py) 文件
  • Git 常见错误与解决方案全指南
  • 安装perl-DBD-MySQL报错:Requires: libmysqlclient.so.18
  • C++ 设计模式 - 访问者模式