精华内容
下载资源
问答
  • 2022-01-11 17:16:12

    /题目:创建表Book表,字段如下:
    bid整型,要求主键
    bname学符型,要求设置唯一键,并非空
    price浮点型,要求有默认值10
    btypeId
    类型编号,要求引用bookType表的id字段
    已知bookType表(不用创建),字段如下:
    id
    name
    /

    一、创建表时添加外键约束

    use books;
    CREATE TABLE booktype(
    		id INT PRIMARY KEY,
    		NAME VARCHAR(20) NOT NULL
    );
    CREATE TABLE book(
    		bid INT PRIMARY KEY,
    		bname VARCHAR(20) UNIQUE,
    		price FLOAT DEFAULT 10,
    		btypeId INT REFERENCES booktype(id)
    );
    

    二、先创建表,后添加约束

    ALTER TABLE book ADD CONSTRAINT FK_Book 
    FOREIGN KEY(btypeid ) REFERENCES booktype(id);
    
    更多相关内容
  • mysql创建表时设置外键约束的方法

    千次阅读 2021-01-18 19:18:26
    mysql创建表时设置外键约束的方法发布时间:2020-06-17 15:54:11来源:亿速云阅读:312作者:元一MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的中,而不是将所有数据放在一个大仓库内,这样就...

    mysql创建表时设置外键约束的方法

    发布时间:2020-06-17 15:54:11

    来源:亿速云

    阅读:312

    作者:元一

    MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

    MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

    我们可以在创建表时设置外键约束:

    在 CREATE TABLE 语句中,通过 FOREIGN KEY 关键字来指定外键,具体的语法格式如下:[CONSTRAINT ] FOREIGN KEY 字段名 [,字段名2,…]

    REFERENCES 主键列1 [,主键列2,…]

    举例:

    现在在 test_db 数据库中创建一个部门表 tb_dept1,表结构如下图所示:

    1cced31150f3ccf1a968ba92cd2cb75f.png

    创建 tb_dept1 的 SQL 语句和运行结果如下所示。mysql> CREATE TABLE tb_dept1

    -> (

    -> id INT(11) PRIMARY KEY,

    展开全文
  • 下面是已经创建好的两个数据!(还未加外键约束) 1. mysql> show columns from message;//信息 +-----------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default |...
  • 需要有两个

    需要有两个表

     

    展开全文
  • 一、SQL语句创建数据设置外键关系 create table demo.ChineseCharInfo ( ID int not null auto_increment, Hanzi varchar(10) not null, primary key (ID) ) engine=innodb auto_increment=
  • 关于Mysql新建表时设置外键或者从已有中添加外键 *外键:在从中与主主键对应的那一列,如:下面例子中的联系人中的(lkm_cust_id) 主: 一方,用来约束别人的: 多方,被别人约束的 1.新建表时 ...

    关于Mysql新建表时设置外键或者从已有表中添加外键

    *外键:在从表中与主表主键对应的那一列,如:下面例子中的联系人表中的(lkm_cust_id)

    • 主表: 一方,用来约束别人的表
    • 从表: 多方,被别人约束的表

    1.新建表时

    [CONSTRAINT] [外键在这里插入代码片约束名称] FOREIGN KEY(外键字段名) REFERENCES 主表名(主键字段名);
    

    例如: 此处在联系人表中添加外键(cust_id)

    /*创建客户表*/
    CREATE TABLE cst_customer (
      cust_id bigint(32) NOT NULL AUTO_INCREMENT COMMENT '客户编号(主键)',
      PRIMARY KEY (`cust_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8;
    
    /*创建联系人表*/
    CREATE TABLE cst_linkman (
      lkm_id bigint(32) NOT NULL AUTO_INCREMENT COMMENT '联系人编号(主键)',
      lkm_cust_id bigint(32) NOT NULL COMMENT '客户id(外键)',
      PRIMARY KEY (`lkm_id`),
      CONSTRAINT `FK_cst_linkman_lkm_cust_id` FOREIGN KEY (`lkm_cust_id`) REFERENCES `cst_customer` (`cust_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
    
    1. 在已有表中添加外键
      语法:
    ALTER TABLE 从表 ADD [CONSTRAINT] [外键约束名称] FOREIGN KEY (外键字段名) REFERENCES 主表(主
    键字段名);
    

    3.补充----设置外键时on条件说明

    • . cascade方式
      在父表上update/delete记录时,同步update/delete掉子表的匹配记录

      . set null方式
      在父表上update/delete记录时,将子表上匹配记录的列设为null
      要注意子表的外键列不能为not null

      . No action方式
      如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作

      . Restrict方式
      同no action, 都是立即检查外键约束

      . Set default方式
      父表有变更时,子表将外键列设置成一个默认的值 但Innodb不能识别

    展开全文
  • 中已有字段设置 外键 似乎不能设置为主键即使定义没有定义主键也会报错 如 Multiple primary key defined 1。添加新字段 alter table 表名 add 字段名 字段描述; alter table student add phone varchar(20);...
  • mysql建表外键怎么设

    千次阅读 2021-03-15 20:14:19
    mysql建表外键怎么设mysql建表时设置外键的方法:在“CREATE TABLE”语句中,通过“[CONSTRAINT ] FOREIGN KEY 字段名 [,字段名2,…] REFERENCES 主键列1 [,主键列2,…]”语句设置MySQL 外键约束(FOREIGN KEY)是...
  • mysql建立外键

    2021-01-20 00:11:20
    建立外键的前提:本的列必须与外键类型相同(外键必须是外表主键)。 外键作用: 使两张形成关联,外键只能引用外表中的列的值!...主键 id 类型 int 创建含有外键: create table temp( id i
  • mysql创建表(带外键)

    千次阅读 2020-06-16 17:54:51
    创建department: create table department( dept_name varchar(20), budget int, descript varchar(20), primary key(dept_name) ); 创建course: create table course( course_id varchar(20), deptnames ...
  • 删除不是特别常用,特别是对于存在外键关联的,删除更得小心。但是在开发过程中,发现Schema设计的有问题而且要删除现有的数据库中所有的来重新创建也是常有的事情;另外在测试的时候,也有需要重新创建数据库...
  • MySQL命令行&MySql外键设置详解 .txt
  • 创建两个 CREATE TABLE `student1` ( `id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号', `name` varchar(30) NOT NULL DEFAULT '匿名' COMMENT '姓名', `pwd` varchar(20) NOT NULL DEFAULT '123456' ...
  • 创建外键语法 ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子列] REFERENCES news_type[主表名] (id)[主列] ; 3.使用组合主键 如果一列不能唯一区分一...
  • Mysql表创建好后添加外键

    千次阅读 2021-09-13 20:20:47
    命令:altertable需加外键addconstraint外键名foreignkey(需加外键表的字段名)referencnes关联表名(关联字段名); 注意:外键名不能重复
  • MySQL创建表时主键与外键

    千次阅读 2021-04-16 16:06:59
    1.什么时候用主键?主键的用处?保证数据的唯一性 2.一张只能有一个主键吗?√ 3.一个主键只能是一列吗...另外,需要注意外键名不能重复,故在进行外键命名,比如t2和t1进行外键关联,则命名为fk_t2_t1,若t3和..
  • Mysql创建外键约束的两种方式

    千次阅读 2021-02-04 16:31:04
    通过给mysql的表字段添加外键约束,...1、创建表时直接创建外键约束create table books(bookid number(10) not null primary key,bookName varchar2(20) not null,price number(10,2),categoryId number(10) not nul...
  • MySQL表创建外键

    2021-01-18 19:18:06
    1. Employees数据库安装(1)... (Table)(1)介绍是关系数据库的核心=关系是记录的集合Mysql默认存储引擎都是基于行存储(2)是数据的集合select * from table_name limit 1;集合是无序的。从中随机...
  • mysql怎么生成外键

    千次阅读 2021-01-18 21:13:04
    在输入主和从的数据:insert into `yuangong` (`bianhao`, `mingcheng`) values('001','王媛媛');insert into `yuangong` (`bianhao`, `mingcheng`) values('002','张依依');insert into `gongzi` (`id`, `...
  • 创建表 CREATE TABLE student( id INT(10) NOT NULL PRIMARY KEY, NAME VARCHAR(30) DEFAULT NULL, tid INT(10) DEFAULT NULL, KEY `fktid` (`tid`), CONSTRAINT `fktid` FOREIGN KEY(`tid`) REFERENCES `teacher` ...
  • 关联2张表出现了无法创建外键的情况,从这个博客看到,问题出在第六点的Charset和Collate选项在级和字段级上的一致性上。我的2张表的编码charset和collate不一致,2张表都执行执行SQL语句: alter table 表名 ...
  • mysql设置外键的方式

    千次阅读 2022-05-02 20:35:42
    mysql 设置外键的两种方式,mysql ,外键
  • 创建外键 方法一 drop table if exists base_info; create table base_info( id varchar(64) not null comment '主键', -- 其他字段省略 primary key(id) )engine=innodb default charset=utf8 comment '基本...
  • 嗨,看看这里:http://www.sitepoint.com/mysql-foreign-keys-quicker-database-development/ [^]
  • 数据库A: CREATE TABLE task_desc_tab ( id INT(11) PRIMARY KEY NOT NULL COMMENT '自增主键' AUTO_INCREMENT, <strong>taskname</strong> VARCHAR(200) NOT NULL COMMENT '任务名字', sqlname VARCHAR(20) ...
  • MySQL外键约束详解

    千次阅读 2021-12-19 08:02:01
    今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL外键约束详解。 一、MySQL外键约束作用 二、外键约束创建 ...(二)在创建数据表时创建外键约束 (三)在创建数据后添加外键约束 三、外键约束功能演示
  • 非自连接 内连接 ,外连接 union union有重 效率低 和 union all 多联合查询的七种方式见 mysql联合查询 的七种方式 全部 左连接 右连接 内连接_铭曱的博客-CSDN博客_mysql七种连接方式总共存在七总情况图一 ...
  • 【精华版】mysql创建表(带外键)

    万次阅读 2017-04-17 23:26:53
    创建department: create table department( dept_name varchar(20), budget int, descript varchar(20), primary key(dept_name) ); 创建course: create table course( course_id varchar(20), deptnames ...
  • MySQL中如何设置外键

    万次阅读 多人点赞 2019-07-02 22:53:13
    下面我将以举例的方式说明,作者能力有限,欢迎指正和补充。 一、环境 ...Foreign key, 本关系中的属性的属性值需要参照另外一个中主键的属性值而存在,可为空也可不为空。 四、实例 目前有一个...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 107,776
精华内容 43,110
关键字:

mysql创建表时设置外键

mysql 订阅