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

网站建设个人博客辽宁建设工程招标网

网站建设个人博客,辽宁建设工程招标网,网站托管维护方案,个人做的网站百度搜索不到1#xff0c;创建表时加入的约束a) 非空约束#xff0c;not nullb) 唯一约束#xff0c;uniquec) 主键约束#xff0c;primary keyd) 外键约束#xff0c;foreign key1#xff0c;非空约束#xff0c;针对某个字段设置其值不为空#xff0c;如#xff1a;学生的姓名不…1创建表时加入的约束a) 非空约束not nullb) 唯一约束uniquec) 主键约束primary keyd) 外键约束foreign key1非空约束针对某个字段设置其值不为空如学生的姓名不能为空drop table if existst_student;create tablet_student(student_idint(10),student_namevarchar(20) not null,sexchar(2) default m,birthday date,emailvarchar(30),classes_idint(3))反例如果插入时 student_name为空违反了约束则报错insert intot_student(student_id, birthday, email, classes_id)values(1002, 1988-01-01, qqq163.com, 10)2唯一性约束它可以使某个字段的值不能重复如email不能重复drop table if existst_student;create tablet_student(student_idint(10),student_namevarchar(20) not null,sexchar(2) default m,birthday date,emailvarchar(30) unique,classes_idint(3))drop table if existst_student;create tablet_student(student_idint(10),student_namevarchar(20) not null,sexchar(2) default m,birthday date,emailvarchar(30) ,classes_idint(3) ,constraint email_unique unique(email)/*表级约束*/3主键约束每个表应该具有主键主键可以标识记录的唯一性主键分为单一主键和复合(联合)主键单一主键是由一个字段构成的复合(联合)主键是由多个字段构成的。drop table if existst_student;create tablet_student()student_idint(10) primary key,/*列级约束*/student_namevarchar(20) not null,sexchar(2) default m,birthday date,emailvarchar(30) ,classes_idint(3))或者drop table if existst_student;create tablet_student(student_idint(10),student_namevarchar(20) not null,sexchar(2) default m,birthday date,emailvarchar(30) ,classes_idint(3),CONSTRAINT p_id PRIMARY key (student_id)/*表级约束*/)4外键约束外键主要是维护表之间的关系的主要是为了保证参照完整性如果表中的某个字段为外键字段那么该字段的值必须来源于参照的表的主键。首先建立班级表t_classesdrop table if existst_classes;create tablet_classes(classes_idint(3),classes_namevarchar(40),constraint pk_classes_id primary key(classes_id))在t_student中加入外键约束drop table if existst_student;create tablet_student(student_idint(10),student_namevarchar(20),sexchar(2),birthday date,emailvarchar(30),classes_idint(3),constraint student_id_pk primary key(student_id),constraint fk_classes_id foreign key(classes_id) referencest_classes(classes_id))当我们向t_student中加入数据insert intot_student(student_id, student_name, sex, birthday, email, classes_id)values(1001, zhangsan, m, 1988-01-01, qqq163.com, 10)出现错误因为在班级表中不存在班级编号为10班级外键约束起到了作用存在外键的表就是子表参照的表就是父表所以存在一个父子关系也就是主从关系主表就是班级表从表就是学生表。上面的例子中如果插入的时候把外键值设为null可以插入成功。成功的插入了学生信息但是classes_id没有值这样会影响参照完整性所以我们建议将外键字段设置为非空。当需要删除班级数据也会报错因为子表(t_student)存在一个外键classes_id它参照了父表(t_classes)中的主键所以先删除子表中的引用记录再修改父表中的数据。因为子表(t_student)存在一个外键classes_id它参照了父表(t_classes)中的主键所以先删除父表那么将会影响子表的参照完整性所以正确的做法是先删除子表中的数据再删除父表中的数据采用drop table也不行必须先drop子表再drop父表例如级联更新mysql对有些约束的修改比较麻烦所以我们可以先删除再添加alter table t_student drop foreign keyfk_classes_id;alter table t_student add constraint fk_classes_id_1 foreign key(classes_id) references t_classes(classes_id) on update cascade;级联之后我们只修改了父表中的数据但是子表中的数据也会跟着变动。2需不需要外键主键和索引是不可少的不仅可以优化数据检索速度开发人员还省不其它的工作,矛盾焦点数据库设计是否需要外键。这里有两个问题一个是如何保证数据库数据的完整性和一致性二是第一条对性能的影响。正方观点1由数据库自身保证数据一致性完整性更可靠因为程序很难100保证数据的完整性而用外键即使在数据库服务器当机或者出现其他问题的时候也能够最大限度的保证数据的一致性和完整性。eg数据库和应用是一对多的关系应用会维护他那部分数据的完整性系统一变大时增加了应用和两个应用也许是不同的开发团队来做的。他们如何协调保证数据的完整性而且一年以后如果又增加了C应用呢2有主外键的数据库设计可以增加ER图的可读性这点在数据库设计时非常重要。3外键在一定程度上说明的业务逻辑会使设计周到具体全面。反方观点1可以用触发器或应用程序保证数据的完整性2过分强调或者说使用主键外键会平添开发难度导致表过多等问题3不用外键时数据管理简单操作方便性能高(导入导出等操作在insert,   update,   delete   数据的时候更快)eg:在海量的数据库中想都不要去想外键试想一个程序每天要insert数百万条记录当存在外键约束的时候每次要去扫描此记录是否合格一般还不 止一个字段有外键这样扫描的数量是成级数的增长我的一个程序入库在3个小时做完如果加上外键需要28个小时结论1在大型系统中(性能要求不高安全要求高)使用外键在大型系统中(性能要求高安全自己控制)不用外键小系统随便最好用外键。2用外键要适当不能过分追求3不用外键而用程序控制数据一致性和完整性时应该写一层来保证然后个个应用通过这个层来访问数据库。需要注意的是MySQL允许使用外键但是为了完整性检验的目的在除了InnoDB表类型之外的所有表类型中都忽略了这个功能。这可能有些怪异实际上却非常正常对于数据库的所有外键的每次插入、更新和删除后进行完整性检查是一个耗费时间和资源的过程它可能影响性能特别是当处理复杂的或者是缠绕的连接树时。因而用户可以在表的基础上选择适合于特定需求的最好结合。所以如果需要更好的性能并且不需要完整性检查可以选择使用MyISAM表类型如果想要在MySQL中根据参照完整性来建立表并且希望在此基础上保持良好的性能最好选择表结构为innoDB类型转自;https://www.cnblogs.com/fuland/p/4280434.html
http://www.zqtcl.cn/news/579612/

相关文章:

  • 网站建设基本流程心得wordpress首页截断
  • 网站包括哪些内容网站开发的相关技能
  • 百度竞价 百度流量 网站权重qq推广
  • 重庆网站建设总结WordPress简单百度站长插件
  • pc网站转换成微网站工作室推广网站
  • 嘉兴优化网站公司做水果生意去哪个网站
  • 青岛知名网站建设公司排名wordpress商场插件
  • 设计网站猪八戒自己制作logo免费生成器
  • 深圳万齐创享网站建设网站建设基本教程
  • 聊城做网站信息建设工程合同可以分为
  • 网站设计 注意做筹款的网站需要什么资质
  • 家居网站建设费用国土局网站建设经验
  • 企业网站开发教程网站建设更改
  • 违法网站怎么做安全wordpress自定义应用
  • 四平英文网站建设wordpress添加特效
  • 如何在手机上制作网站企业网站 微博模块
  • 网站内容规范网站建设建设公司哪家好
  • 深圳网站制作公司地址如何制作手机版网站
  • 深圳定制网站制作报价网络交易平台
  • 鞍山网站制作报价wordpress手机客户端端
  • 开发触屏版网站标签苏州沧浪区做网站的
  • 网站接入商钓鱼网站链接怎么做
  • 建设部机关服务中心网站网站建设维护费 会计科目
  • 网站解析后怎么解决方法淘宝网站建设方案模板
  • 淘宝客可以自己做网站推广吗营销网络建设怎么写
  • 上海高端网站制作广告设计培训课程
  • 互联网站平台有哪些建筑工程教育网官网
  • 广告传媒公司哪家好职场seo是什么意思
  • 番禺龙美村做网站博山区住房和城乡建设局网站
  • 山东网站建设xywlcnwordpress如何创建导航