发新话题
打印

[魔力私服分享] 另类防重名 之 MYSQL-触发器.

另类防重名 之 MYSQL-触发器.

防重名的办法有很多.CG和GMSV 有条件的话都是可以做到的.bbs.mocwww.com- H6 D7 K1 ?& r! p4 W; p
现在告诉大家一个另类的办法.
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ B1 `* t- _3 z& C9 q% p

% [- @2 }" O* [0 \' M! I魔力私服,最新魔力宝贝私服技术交流触发器$ ]6 G5 t8 Q2 f3 n0 `

6 @+ i$ _/ @8 g. g" u8 k+ K5 g" s妖城在线论坛条件: mysql 5.Xbbs.mocwww.com3 ]: w7 g/ O, J

. n1 S' i: I0 L* ]' t' ~魔力私服,最新魔力宝贝私服技术交流Navicat 打开数据库, 右键tbl_character表 选择 设计表 - > 触发器
8 d. k, X* Z/ ]7 c/ |: Y5 ?! k- h6 Sbbs.mocwww.com
  ^& m. g' X* [5 x' P魔力私服,最新魔力宝贝私服技术交流下面介绍两种写法.
$ l6 i) r1 W/ K3 A3 d+ ^% g妖城在线论坛
7 S- m0 B- V; @6 y2 y# p$ v方法1:
$ s& z, a, w: M5 D3 H
% ~; o3 G( _. D$ K) y魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com# F* |0 M4 A- g: z& W  D' d
解释:
4 l" D: e3 |: h5 o在插入数据前触发.如果有重复名的. 自动将插入的 name 字段 和 cdkey 字段 设置成 '0'+ T( x8 r% X1 h. X9 [1 d
修改后的语句仍然是正常的. 但是这个新建立的 名字:0 的角色 已经不属于玩家了.而是属于帐号:'0'
魔力私服,最新魔力宝贝私服技术交流/ N2 P9 b: q0 m) o1 `: n

( Y* h' w7 ]( Z这时 游戏端 建立角色 显示建立成功.但是 没有角色. 防重名成功.
0 L. A& t+ w) u6 b
& m4 v! T0 r" S$ \& v/ v9 ?魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表这种方法,游戏,服务器 不会产生任何错误信息. 魔力私服,最新魔力宝贝私服技术交流3 v& }, T7 \$ c- v# u% U
但是要保证 角色名'0' 和CDKEY'0' 不属于某玩家.说白了.就是GM把这帐号和角色名先注册掉.
bbs.mocwww.com. W) e7 [+ \$ `6 U! Z* n
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 N: {) ~. L0 l5 j& f/ E& R
方法2:
% {+ j8 e+ j* l' p2 O' J$ m

3 ~3 f. b. h; E& g6 W2 p( l魔力私服,最新魔力宝贝私服技术交流解释:上面的语句可以看出. 在找到重名资料后, 触发器将 语句中的 cdkey设置成了null (空)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート  z& @8 `8 E. {8 L: E
但是数据库中  CdKey  是主键, 不允许空. 所以 GMSV bbs.mocwww.com% {; ?9 p/ g! F2 _* F1 n4 F' x# k1 ^
会报MYSQL执行错误的信息,—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. b' M0 c& P5 U2 A  H$ F6 V
意思就是 CDKEY 字段不允许为NULL

. a# @3 S& e6 {; L6 Q% R+ l, Z如图:
  k; u, a% E/ Z- v魔力私服,最新魔力宝贝私服技术交流 魔力私服,最新魔力宝贝私服技术交流: p% t9 a7 u9 H5 ^

  i4 o# v9 X, ?9 w5 L5 j% _妖城在线论坛同时客户端有错误提示.CG程序未汉化.
( g1 ~" H  e! V% Hbbs.mocwww.com
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表: o9 m4 O1 Z8 p+ {4 G

* O2 j$ h! b& w7 S! D! ebbs.mocwww.com翻译过来是角色创建失败., x6 K1 v9 {* u% `/ C3 b' W# K
可以UE 修改成[名字重复].
bbs.mocwww.com  w& ]  U/ X  t6 ?. t, u4 H
这种方法可以保证数据库的信息不会出错.但是GMSV报错看着比较难受.
0 a9 K5 [% p: ?! ^, r1 E—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート大家自行决定吧!
/ Y6 |, z! E  g8 U* Q魔力私服,最新魔力宝贝私服技术交流抛砖引玉 触发器 可以做很多事情.大家加油开发出更多的功能吧!
bbs.mocwww.com/ a. N- Y/ m/ _* l9 o: A
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表$ }/ q! F$ ~$ z5 r) y8 J! m
魔力私服,最新魔力宝贝私服技术交流$ E, V# p) I3 S4 \6 g/ J

! \! G7 x. Z# g3 A" u$ K2 Dbbs.mocwww.com; S5 C3 g0 G8 X# K- I
[ 本帖最后由 叶子 于 2013-6-13 02:16 编辑 ]
本帖最近评分记录
  • 小狐狸 妖力 +15 精品文章 2013-6-13 01:36
有事,请 -> 站内PM

TOP

支持,叶子

TOP

trigger 在大量并发连接的时候不稳定

TOP

支持啊~~~~
分享大神美德呀!分享大神美德呀!分享大神美德呀!
难道只拿东西不回么?很疑问呐...

TOP

发新话题