Mysql_常见约束

第二章:关系数据库 1.实体完整性:关系中主码的属性不能为空。 2.参照完整性:如果关系R1的外码Fk与关系R2的主码相对应,则R1中的每一个元组的Fk值或等于R2中的某个元组的Pk值,或者为空值。 (意义:如果关系R1的某个元组t1参照了关系R2的某个元组t2,则t2必须存在。) 示例: 3.用户自定义完整性:用户针对具体的应用环境定义的完整性约束条件。 实体完整性和参照完整性由DBMS系统自动支持 概念图: ... 阅读详情

#常见约束

    含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性

    分类:六大约束

        not null:非空,用于保证该字段的值不能位空

          比如姓名、学号等

        default:默认,用于保证该字段有默认值

          比如性别

        primary key:主键,用于保证该字段的值具有唯一性,并且非空

          比如学号、员工编号等

        unique:唯一,用于保证该字段的值具有唯一性,可以为空

          比如座位号

        check:检查约束【mysql中不支持】

          比如年龄(>18岁到>60岁,就可设置检查约束)、性别

        foreign key:外键,用于限制两个表的关系,用于保证该字段的值必须来自于主表的关联列的值

          在从表添加外键约束,用于主表中某列的值 比如student表的majorId字段 引用major表的主表majorId

          比如学生表的专业编号,员工表的部门编号,员工表的工种编号

 

        添加约束的时机;

            1.创建表时

            2.修改表时

    

        约束的添加分类:

            列级约束:

                六大约束语法上都支持,但外键约束没有效果

            表级约束:

                除了非空、默认,其它的都支持

 

    主键和唯一的对比:

                    保证唯一性    是否允许为空    一个表中可有有多少个    是否允许组合

        主键      yes                    no                    最多有1个                    yes,但不推荐使用

        唯一      yes                    yes                   可以有多个                   yes,但不推荐使用

 

        CREATE TABLE 表名(

            字段名 字段类型 列级约束,  #与字段一起的对列进行约束

            字段名 字段类型,

            表级约束  

        );

 

                                    位置                支持的约束类型                                是否可以起约束名

        列级约束:    列的后面           语法都支持,但外键没有效果                 不可以

        表级约束:    所有列的后面    默认和非空不支持,其它支持                可以(主键没有效果)

 

    #一、创建表时添加约束

     #1.添加列级约束

        DROP DATABASE IF EXISTS stus;

        CREATE DATABASE IF NOT EXISTS students;

        USE students;

        CREATE TABLE stuinfo(

            id INT PRIMARY KEY,#主键

            stuName VARCHAR(20) NOT NULL,#非空

            gender CHAR(1) CHECK(gender IN('男','女')),#检查约束

            seat INT UNIQUE,#唯一约束

            age INT DEFAULT,18 #默认约束

            majorId INTFOREIGN KEY REFERENCES major(id)#外键 引用major表中的id

        );

 

        #major专业表

        CREATE TABLE major(

            id INT PRIMARY KEY,

            majorName VARCHAR(20)

        );

        DESC stuinfo;

        

 

        #查看表中所有的索引,包括主键、外键、唯一

        SHOW INDEX FROM stuinfo;

        

 

     #2.添加表级约束

        语法:在各个字段的最下面

        【constraint 约束名】 约束类型(字段名)

            可以省略

 

        DROP TABLE IF EXISTS stuinfo;

        CREATE TABLE stuinfo(

            id INT,

            stuName VARCHAR(20),

            gender CHAR(1),

            seat INT,

            age INT,

            majorid INT,

            #表级约束constraint约束

            CONSTRAINT pk PRIMARY KEY(id),#为id列添加主键

            CONSTRAINT uq UNIQUE(seat),#唯一键

            CONSTRAINT ck CHECK(gender IN('男','女')),#检查约束

            CONSTRAINT fk_stuinfo_major FOREIGN KEY(majorid) REENCES major(id)#外键    

        );

SHOW INDEX FROM stuinfo;

 

 

#通用的写法:

        CREATE TABLE IF NOT EXISTS stuinfo(

            id INT PRIMARY KEY,

            stuName VARCHAR(20) NOT NULL,

            gender CHAR(1),

            seat INT UNIQUE,

            age INT DEFAULT 18,

            majorid INT,

            CONSTRAINT fk_stuinfo_major FOREIGN KEY(majorid) REFERENCES major(id)

        );

 

    #两个字段组合成一个主键 或两个字段组合成一个唯一键 但不推荐使用

    CREATE TABLE stuinfo(

        id INT,

        stuName VARCHAR(20),

        gender CHAR(1),

        seat INT,

        age INT,

        majorid INT,

        CONSTRAINT pk PRIMARY KEY(id,stuName),#两个列组合成一个主键

        CONSTRAINT uq (seat,seat2),#两个列组合成一个唯一键

        CONSTRAINT ck CHECK(gender IN('男','女')),#检查约束

        CONSTRAINT fk_stuinfo_major FOREIGN KEY(majorid) REFERENCES major(id)#外键

    );

SELECT * FROM stuinfo;

    #两个主键不重复 可以插入 插入id与stuName一致时 会出现错误

    INSERT INTO stuinfo VALUE(1,'join','男',NULL,18,1);

    INSERT INTO stuinfo VALUE(2,'join','女',NULL,19,2);

    

 

 

#二、修改表时添加约束

        1.添加列级约束

            alter table 表名 modify colunm 字段名 字段类型 新约束;

        2.添加表级约束

            alter table 表名 add 【constraint 约束名】 约束类型(字段名) 【外键的引用(字段名)】

 

        DROP TABLE IF EXISTS stuinfo;

        CREATE TABLE stuinfo(

            id INT,

            stuName VARCHAR(20),

            gender CHAR(1),

            seat INT,

            age INT,

            majorid INT

        );

        DESC stuinfo;

 

    #1.添加非空约束

        ALTER TABLE stuinfo MODIFY COLUMN stuName VARCHAR(20) NOT NULL;

    #2.添加默认约束

        ALTER TABLE stuinfo MODIFY COLUMN age INT DEFAULT 18;

    #3.添加主键

        #Ⅰ.列级约束

        ALTER TABLE stuinfo MODIFY COLUMN id INT PRIMARY KEY;

        #Ⅱ.表级约束 

        ALTER TABLE stuinfo ADD PRIMARY KEY(id);

        #主键起了名字也是没有效果的

        ALTER TABLE emp2 ADD CONSTRAINT my_emp_id_pk PRIMARY KEY(id);

    #4.添加唯一键

        #Ⅰ.列级约束

        ALTER TABLE stuinfo MODIFY COLUMN seat INT UNIQUE;

        #Ⅱ.表级约束

        ALTER TABLE stuinfo ADD PRIMARY KEY(id);

    #5.添加外键

        #默认的外键名

        ALTER TABLE stuinfo ADD FOREIGN KEY(majorid) REFERENCES major(id);

        SHOW INDEX FROM stuinfo;

        #有名字的外键

        ALTER TABLE stuinfo ADD CONSISTENT fk_stuinfo_major FOREIGN KEY(majorid) REFERENCES major(id);

 

#三、修改表时删除约束

        #1.删除非空约束

            ALTER TABLE stuinfo MODIFY COLUMN stuName VARCHAR(20) NULL;

        #2.删除默认约束

            ALTER TABLE stuinfo MODIFY COLUMN age INT;

        #3.删除主键约束

            ALTER TABLE stuinfo DROP PRIMARY KEY;#【推荐】

            ALTER TABLE stuinfo MODIFY COLUMN id INT;

        #4.删除唯一

            ALTER TABLE stuinfo DROP INDEX seat;#DROP INDEX 唯一键约束名

        #5.删除外键

            ALTER TABLE stuinfo DROP FOREIGN KEY fk_stuinfo_major;

            SHOW INDEX FROM stuinfo;

 

 

 

 

 

 

 

 

字节跳动已上岸测试工程师的面试经验 这个时候发面经已经有点晚了,所以现在打算让这篇面经主要面向即将秋招的童鞋,当然现在还在春招的童鞋也可以看哈,我和大家一起聊聊关于测试的二三事。   一、测试工程师的工作是什么?   测试工程师简单点说就是找bug,然后反馈给开发人员,不要小看这个工作。   首先很明显的bug开发人员有时候自己就能找到,测试人员要有比开发人员更加全面的想法才能找到深层次的问题点,   其次,要端正一个态度就是测试人员不是一个电脑小白,相反国外顶级的测试开发工程师同时也是顶级的开发工程师甚至更厉害,所以作为一个测试工程师一定要 阅读详情

相关推荐

TwinCAT3实战:从零搭建倍福PLC的Modbus-TCP Server

本文详细介绍了如何使用TwinCAT3从零搭建倍福PLC的Modbus-TCP Server,包括环境准备、工程配置、参数设置、客户端连接测试及常见问题排查。通过实战步骤和实用技巧,帮助工程师快速掌握倍福PLC与Modbus-TCP的通信实现,提升工业自动化项目的开发效率。

weixin_30797199的博客 174

【MySQL基础】七种约束

mysql 约束

qq_38149054的博客 6973

SAP 第三方销售

第三方销售

yanzibing99的博客 3516

MySQL复习笔记(十一):DDL、数据库和表的管理、常见数据类型、常见约束、自增

DDL语言 数据定义语言(Data Define Language):库和表的管理操作 创建:create 修改:alter 删除:drop 数据库的管理 一、数据库的创建 语法: create database 【if not exists】库名; 1、不存在的情况下,创建数据库books create database if not exists books; 二、库的修改 1、更改库的字...

Miracle42的博客 814

从零构建:如何用MATLAB和SDR硬件搭建你的第一个OFDM卫星通信原型系统

本文详细介绍了如何利用MATLAB和SDR硬件从零构建OFDM卫星通信原型系统。通过核心组件选型、开发环境配置、OFDM算法实现到系统集成与优化的完整流程,帮助通信工程学生和DIY爱好者快速掌握软件无线电技术在卫星通信中的应用。特别推荐使用HackRF One和MATLAB工具箱实现高性价比的OFDM系统验证。

pz890123456的博客 379

多层下拉框_HLM多层线性模型|HLM2教程

01多层线性模型简介多层线性模型(Multilevel linear model),又称为多层分析、分层线性模型。其本质是线性模型的线性模型、回归的回归。本文主要介绍如何使用HLM6.08软件来构建两层线性模型。02案例简介水平1文件:样例数据HSB1.sav包括7185个案例和4个变量:MINORITY:种族(1=minority, 0=other)FEMALE:性别(1=femal...

weixin_35714534的博客 5621

创建数据表

比方说,我想要在新建的mrsoft数据库里面创建一个表。 表名为: books. 然后为它增加5个字段,分别是: id(主键)、name(图书名称)、category(图书分类)、price(图书合格)、publish_time(出版时间)。 创建books的SQL语句如下: sql = ''' CREATE TABLE books ( id int(8) NOT NULL AUTO_...

AIex_的博客 2883

YOLOv11改进策略【独家融合改进】| 模型轻量化二次改进:StarNet + FreqFusion,极限降参,适用专栏内所有轻量化模型

FreqFusion是一种旨在解决密集图像预测任务中特征融合问题。

Limiiiing的博客 2125

全网最全:Mysql六种约束详解

约束是作用于表中字段上的规则,用于限制存储在表中的数据。保证数据库中数据的正确、有效性和完整性。分类约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束。用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。左侧的emp表是员工表,里面存储员工的基本信息,包含员工的ID、姓名、年龄、职位、薪资、入职日期、上级主管ID、部门ID,在员工的信息中存储的是部门的IDdept_id,而这个部门的ID是关联的部门表dept的主键id,那emp表的dept_id就是外键,关联的是另一张表的主键。...

怪咖@的博客 1万+

黑猫带你学eMMC协议第12篇:生产状态感知(PSA)

1 概述 1.1 什么是PSA Production State Awareness (PSA) 生产状态感知 e•MMC设备可以利用其是否在生产环境中的信息,从而在现场运作时进行不同的操作。 例如,在设备低温焊接(soldering)前,将数据写入emmc,可能导致数据出错,而正在焊接期间写入数据,出错的概率可能会更大。在低温焊接之前,emmc设备可以使用一种特定的内部操作去加载内容,这样就能减少数据出错的概率,而在低温焊接后进行常规的操作就行了。 1.2 psa如何进行工作? PSA存在于emmc5.0

黑猫奥利奥的博客 4263

无人驾驶Autoware导读

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对无人驾驶Autoware介绍做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。

qq_35635374的博客 2398

mysql 约束_mysql常见约束有哪些

mysql常见约束有:1、非空约束“not null”;2、唯一性约束“unique”;3、主键约束“primary key”;4、外键约束“foreign key”;5、默认值约束“Default”等等。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。下面本篇文章就来给大家介绍一下6种mysql常见的约束,希望对大家有所帮助。1、非空约束(not null)非空...

weixin_35337252的博客 1065

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

mysql的约束有什么_mysql常见约束有哪些

约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。下面本篇文章就来给大家介绍一下6种mysql常见的约束,希望对大家有所帮助。1、非空约束(not null)非空约束用于确保当前列的值不为空值,非空约束只能出现在表对象的列上。Null类型特征:所有的类型的值都可以是null,包括int、float 等数据类型2、唯一性约束(unique)唯一约束是指定table的列...

weixin_29228203的博客 2249

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

MySQL之常见约束总结

一、约束的含义 一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性。MySQL数据库通过约束(constraints)防止无效的数据进入到表中,以保护数据的实体完整性。 二、约束的分类 1、NOT NULL:非空,用于保证该字段的值不能为空。比如姓名、学号等。 2、DEFAULT:默认,用于保证该字段有默认值。比如性别。 3、PRIMARY KEY:主键,用于保证该字段的值具有唯一性,...

IT_Helianthus的博客 481

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

mysql常见约束

gender CHAR(1) CHECK(gender='男' OR gender ='女'),#检查(虽然语法不会报错,但是该约束不起效果,即不支持检查约束)gender CHAR(1) CHECK(gender IN ('男', '女')),#检查(虽然语法不会报错,但是该约束不起效果,即不支持检查约束)countryId INT REFERENCES country(id)#外键(虽然语法不会报错,但是该约束不起效果,即不支持列级外键约束)行SHOW INDEX FROM myUser7;

Zero的博客 517

mysql常见的约束类型有哪些_mysql中常见的几种约束有哪些

mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。(推荐教程:mysql教程)MYSQL中常用的几种约束:1、主键主键(PRIMARY KEY)是用于约束表中的一行,作为这一行的标识符,在一张表中通过主键...

weixin_42191480的博客 5936

MySQL常见约束

MySQL常见约束 /* 一、含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性 二、分类:六大约束 1.NOT NULL:非空,用于保证该字段的值不能为空 比如姓名、学号等 2.DEFAULT:默认,用于保证该字段有默认值 比如性别 3.PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空 比如学号、员工编号等 4.UNIQUE:唯一,用于保证该字段的值具有唯一性,可以为空 比如座位号 5.CHECK:检查约束【mysql中不支持】 比如年龄、性别 6.FOREIGN K

baiyexing1的博客 182

常见的几种约束mysql_mysql中常见的几种约束是什么

mysql中常见的几种约束是什么发布时间:2020-10-09 17:39:30来源:亿速云阅读:87作者:小新小编给大家分享一下mysql中常见的几种约束是什么,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。约束是一种限制...

weixin_32218639的博客 1143

MySQL基础(十五)——常见约束

本篇文章主要是对MySQL学习时的一些总结,作为学习笔记记录。 数据来源 数据部分来自于b站尚硅谷MySQL课程 常见约束 对于mysql来说,约束像是一种限制,限制了表中的数据 ,同时也保证了表中数据的准确性和可靠性。 分类 常见约束主要存在六种形式: 约束名 含义 示例属性 NOT NULL 非空,用于保证该字段的值不能为空 学号,姓名等 DEFAULT 默认值,用于保证该字段存在默认值 性别等 PRIMARY KEY

止步听风的博客 230

mysql的常见约束有哪些_mysql常见约束有哪些

mysql常见约束有:1、非空约束“not null”;2、唯一性约束“unique”;3、主键约束“primary key”;4、外键约束“foreign key”;5、默认值约束“Default”等等。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。下面本篇文章就来给大家介绍一下6种mysql常见的约束,希望对大家有所帮助。1、非空约束(not null)非空...

weixin_29042035的博客 658

mysql有几种约束_mysql中常见的几种约束有哪些

mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。(推荐教程:mysql教程)MYSQL中常用的几种约束:1、主键主键(PRIMARY KEY)是用于约束表中的一行,作为这一行的标识符,在一张表中通过主键...

weixin_36317800的博客 2057

MySQL 常见约束

MySQL 常见约束前言非空约束(not null)唯一约束(unique)1、设置编号是唯一的(列级约束:该约束只应用于相关的一列上):2、给两个列或者多个列添加 unique(表级约束:可以应用在一个表中的多列上)主键约束( primary key )1、单一主键2、复合主键3、自然主键和业务主键4、MySQL 提供主键值自增(auto_increment)外键约束(foreign key)父表和子表的操作顺序 前言 在创建表的时候,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的合法性

wgchen 522

在mysql数据表中什么是约束_mysql中常见的几种约束有哪些

mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。(推荐教程:mysql教程)MYSQL中常用的几种约束:1、主键主键(PRIMARY KEY)是用于约束表中的一行,作为这一行的标识符,在一张表中通过主键...

weixin_28871475的博客 1119

MySql(二十)常见约束和标识列

文章目录常见约束约束含义约束分类约束的添加分类添加约束的时机标识列 常见约束 约束含义 用于显示表中的数据,从而保证表中数据的准确性和可靠性 约束分类 not null、default、primary key、unique、check、foreign key 1. not null 含义:非空;用于保证该字段的值不能为空。比如:姓名、学号等 2. defalut 含义:默认;用于保...

qq_43952245的博客 486

MySQL 常见约束和常见数据类型

MySQL 常见约束和常见数据类型 常见约束 /* 含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性 create table 表名( 字段名 字段类型 约束, 字段名 字段类型 列级约束 表级约束 ) 分类: not null 非空 unique 唯一 default 默认,该字段有默认值 priamry key 主键,主码 唯一,非空 foreign key 外...

weixin_43353748的博客 285

mysql中提供哪些约束_mysql中常见的几种约束有哪些

mysql中常见的几种约束有:1、主键;2、默认值;3、唯一;4、外键;5、非空。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。(推荐教程:mysql教程)MYSQL中常用的几种约束:1、主键主键(PRIMARY KEY)是用于约束表中的一行,作为这一行的标识符,在一张表中通过主键...

weixin_33417904的博客 711
上一篇: Mysql_SQL常见的数据类型
下一篇: Mysql_view视图语法及介绍
YanQiu_Only
博客等级 码龄10年 6粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值