|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
mysql的原来开发者又开发了MariaDB,MariaDB适合用来替代mysql吗本章来历于csdn上彀友的会商。
问:不利用事件怎样包管数据的分歧性,也没有说是MSSQL或是MySQL,WCF甚么的,向列位就教一下怎样办理这类成绩?
答1:
起首,要不利用是很难的,由于成熟的RDBMS都内置有这个功效。
然后,假如你能够包管逻辑分歧性,那不利用事件也能够。实在外键也能坚持数据额分歧性。
我以为你的口试题大概次要会合在主键、外键、另有按按次操纵(这里能够制止逝世锁)。
乃至还要计划数据库计划,假如不利用事件,那你的范式估量要最最少的3NF了。
==================================================================================
答2:
关于完全性和分歧性,看来很多人都等量齐观了。
完全性(integrity)更多是针对实践营业来讲的,好比说一个人员ID,不克不及在一个内外是1,另外一个内外倒是2;数据库引擎一样平常经由过程主外键、触发器等来保护完全性的。
分歧性(consistency)是事件一个特性,要底层一点。举例来讲,针对这个语句:updateasetcol1=1,col2=2whereid=1(变动一行数据的两列),数据库要包管在任何情形下,都毫不能呈现只变动了col1,或只变动了col2的情形,这两列(col1和col2)要末一同被改,要末都没改。还包含外部的索引布局、外部数据字典等数据都要相对坚持分歧。
增补一句,select,insert,update,delete任何一个独自的t-sql语句,即使没有begintran,也是一个隐式的事件。
==================================================================================
答3:
事件怎样包管数据的分歧性?
事件次要避免事变做一半吧:
一定转账:
1、给a账号削减100元
2、给b账号增添100元
假如只完成1就溃散了,没有事件,就呈现了帐不屈。
==================================================================================
答4:
数据分歧性不但单实体完全性和参照完全性两个方面,更主要大概说更难完成的是营业完全性,常常必要事件来包管。
进步计划的标准化能够削减对事件的依附,好比削减了冗余,良多事件就不用请求了。可是不克不及完整打消事件,并且标准水平太高会影响别的方面。
触发器实践是事件性的,这里不晓得是不是算一个谜底。
假如不利用事件,要想包管分歧性我以为独一的办法是营业的冗余,就是处置一件事变用别的营业往校订。
==================================================================================
答5:
数据分歧性和事件不是一回事。
数据分歧性次要包含两个方面:实体完全性和参照完全性。
在表中界说主键的目标就是为了使数据库满意实体完全性。
在表间界说外键的目标就是为了使数据库满意参照完全性。
==================================================================================
答6:
主键、外键、触发器
主外键是数据库针对完全性的,这个应不是数据库分歧性的范围,和数据分歧性没甚么干系
实在触发器也是事件性的,只是对照出格,隐式的罢了
==================================================================================mysql使用内部操作字符集gbk来进行操作,即执行"SELECT*FROMtestWHEREname=xxxor1=1/*LIMIT1";从而注入成功 |
|