约束、函数

一、约束

防止同一条数据完全重复:
一、主关键字约束:主键约束。
1.能够唯一的区分每一行数据。——不许重
2.表中的数据按照主键字排序的。——有序
3.主键字不能为空——不为空
4.一个表只能有一个主键,但可以设置组合主键。
操作:在表的设计界面,在相应的列上,右击-"设为主键"/"删除主键":

二、唯一键约束。候选键。
1.不许重,可以为空。
2.可以有多个唯一键
3.唯一键不自动排序。

操作:在表的设计界面上,右击--“索引/键”在弹出窗口上,点击左下角“添加”,右侧属性列表,修改类型——唯一键,设置列

三、自增长列:标识列,Identity列
1.不能手动向里面填值。如果要写insert语句的话,则语句应当把这一列忽略
2.自增长列主要用于整型、长整型,Decimal类型。
3.不要随便把自增长列作为主键。
--
操作:在表的设计界面中,选中相应的列,在下面的属性面版——“标识规范”--选择是

防止有些该填的没有填:
一、非空约束
不能为NULL。
操作:在表的设计界面中“允许NULL值”中的复选框去掉。

二、默认值。
如果不给列赋值的话,会使用默认值填上。
操作:在表的设计界面,选择相应的列,在下面的属性面版中——默认值

防止乱填:
一、Check约束。
按照某种规则对数据进行检查。
操作:在表的设计界面中,右击相应的列,选择“CHECK约束”在弹出的对话框中,设置约束的名称和表达式。

二、外键约束。主表,从表。
主表是用来约束从表的。外键应当建在从表上。
使用主表的主键来约束从表外键。
从表中的外键列是不能随便乱填内容的,它只能填写主表主键中存在的数据。

一旦建立起外键关系来,从表的外键不能乱填,反过主表中的主键列也不能乱删除乱改。

级联删除的设置——整理

操作:先建好主表,在从表的设计界面上,右击-“关系”,在弹出的对话框中选择“添加”,在右边属性列表中设“表和列的规范”

二、函数

select * from News

//数学函数

select SQRT(2) //取平方根
select ABS(-234) //取绝对值

select floor( COUNT(*)/5.0 )from News //取小于这个小数的最大整数
select ceiling ( COUNT(*)/5.0 )from News //取大于这个小数的最小整数
select ROUND(4.523,0) //保留小数点后几位

//字符串函数

select LOWER(‘UserName‘) //转小写
select UPPER(‘UserName‘) //转大写

select LTRIM(‘ me‘) //压缩左边的空格
select RTRIM(‘me ‘) //压缩右边的空格

select LEFT(Title,5) from News //从左边截取几个字符
select RIGHT(Title,5) from News //从右边截取几个字符
select SUBSTRING(Title,3,5) from News //从哪个位置开始截,截几个

select REVERSE(Title) from News //翻转字符串
select CHARINDEX(‘中国‘,Title) from News //字符串出现的位置
select REPLACE(Title,‘中国‘,‘美国‘) from News //替换字符串
select STUFF(Title,3,4,‘china‘) from News //指定位置,指定个数,替换字符串

//其它函数
select RAND() //随机数生成函数 0-1之间
select LEN(‘china‘) //取字符串长度
select GETDATE() //获取当前时间
select YEAR(sbirthday) from Student //取日期时间的年份
select MONTH(sbirthday)from student //取日期时间的月份
select DAY(sbirthday) from student //取日期时间的天数

select DATEPART(ss,sbirthday)from student //取日期时间的部分yy年mm月dd日hh小时mi分钟ss秒
select CAST(‘123‘ as int) //转换格式

时间: 2024-12-08 18:11:55

约束、函数的相关文章

PHP学习笔记A

//语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH变量名建议用下划线方式分隔 // $var_name函数名建议用驼峰命名法 // varName定界符建议全大写 // <<<DING, <<<'DING'文件名建议全小写和下划线.数字 // func_name.php私有属性名.方法名建议加下划线 // private $_name

php基础概念

类与对象: 基本概念  每个类的定义都以关键字 class 开头,后面跟着类名,后面跟着一对花括号,里面包含有类的属性与方法的定义  类名可以是任何非 PHP 保留字的合法标签.一个合法类名以字母或下划线开头,后面跟着若干字母,数字或下划线  一个类可以包含有属于自己的常量,变量(称为“属性”)以及函数(称为“方法”) 属性  类的变量成员叫做“属性”,或者叫“字段”.“特征”,在本文档统一称为“属性”.属性声明是由关键字 public,protected 或者 private 开头,然后跟一个

(转)两千行PHP学习笔记

亲们,如约而至的PHP笔记来啦~绝对干货! 以下为我以前学PHP时做的笔记,时不时的也会添加一些基础知识点进去,有时还翻出来查查. MySQL笔记:一千行MySQL学习笔记http://www.cnblogs.com/shockerli/p/1000-plus-line-mysql-notes.html //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH 变

PHP最全笔记(四)(值得收藏,不时翻看一下)

// 序列化(串行化) # 数据传输均是字符串类型 # 除了资源类型,均可序列化 # 序列化在存放数据时,存放数据本身,也存放数据类型 1.在网络传输数据时:2.为了将数组或对象放在磁盘时 # 序列化serialize        产生一个可存储的值的表示string serialize ( mixed $value ) 返回字符串,此字符串包含了表示value的字节流,可以存储于任何地方.- 有利于存储或传递 PHP的值,同时不丢失其类型和结构.# 反序列化unserialize      

学习php记录《八》

1:类型约束 函数参数的类型约束:比如特定Class类型,数组,递归Traversable, callable的回调类型. 2: serialize()序列化的使用. 将一个对象序列化: 1 <?php 2 3 include("classa.inc"); 4 5 $a = new A; 6 $s = serialize($a); 7 8 file_put_contents('store', $s); 解序列化: <?php include("classa.inc

两千行PHP学习笔记

//语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH变量名建议用下划线方式分隔 // $var_name函数名建议用驼峰命名法 // varName定界符建议全大写 // <<<DING, <<<'DING'文件名建议全小写和下划线.数字 // func_name.php私有属性名.方法名建议加下划线 // private $_name

php知识大集合(自用)

//语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH变量名建议用下划线方式分隔 // $var_name函数名建议用驼峰命名法 // varName定界符建议全大写 // <<<DING, <<<'DING'文件名建议全小写和下划线.数字 // func_name.php私有属性名.方法名建议加下划线 // private $_name

PHP最全笔记

亲们,如约而至的PHP笔记来啦~绝对干货! 以下为我以前学PHP时做的笔记,时不时的也会添加一些基础知识点进去,有时还翻出来查查. MySQL笔记:一千行MySQL学习笔记http://www.cnblogs.com/shockerli/p/1000-plus-line-mysql-notes.html //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH 变

DBA SQL Review

Schema  REview的注意事项 SQL review的注意事项 线上Schema 分析优化技巧 DBA Review 工作内容 表字段.索引设计优化 字段类型(针对业务.故障等类型去确定字段) 注释标准度 分区表约束 SQL编写规范 DML编写规范 子查询约束 函数使用 优化的目的: 为开发人员提出更高的建议 Schema  REview的注意事项 Schema  REview的目标 功能实现为主 保证节省资源 平衡业务技术各个方面,做好取舍 让数据库干自身擅长的工作 不在在DB里进行操

网摘笔记

原文: http://www.cnblogs.com/shockerli/p/2000-plus-line-php-notes.html //语法错误(syntax error)在语法分析阶段,源代码并未被执行,故不会有任何输出. /* [命名规则] */ 常量名 类常量建议全大写,单词间用下划线分隔 // MIN_WIDTH 变量名建议用下划线方式分隔 // $var_name 函数名建议用驼峰命名法 // varName 定界符建议全大写 // <<<DING, <<&l