发新话题
打印

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

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

防重名的办法有很多.CG和GMSV 有条件的话都是可以做到的.
2 n- s* \. h9 m9 O. f现在告诉大家一个另类的办法.

- R' N# n) i3 n; H魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
  R7 K# D& O. M8 Q4 C6 V0 T; N  A触发器妖城在线论坛: g0 `) e) @# u
' p) D' t7 h# A. E- o
条件: mysql 5.X
, X7 Y# Y% E/ T—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表4 \- C- r% e2 e  ]
Navicat 打开数据库, 右键tbl_character表 选择 设计表 - > 触发器妖城在线论坛! x% }  [) x5 j$ e6 C
bbs.mocwww.com9 x8 x/ j) R/ p' ^
下面介绍两种写法.( Q6 Q9 A0 R- i/ H* Z
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート; U) H* H( I+ C  O) q8 w
方法1:
  F3 f  h/ U- D! _3 M% z; _
- K& z- n3 }, X8 J* n魔力私服,最新魔力宝贝私服技术交流
% G" y9 V3 W+ V! s3 L2 V妖城在线论坛解释:
% D( d6 _# r  {) W  W# a妖城在线论坛在插入数据前触发.如果有重复名的. 自动将插入的 name 字段 和 cdkey 字段 设置成 '0'魔力私服,最新魔力宝贝私服技术交流0 z. ^- n7 c2 g7 M0 i  M" ^
修改后的语句仍然是正常的. 但是这个新建立的 名字:0 的角色 已经不属于玩家了.而是属于帐号:'0'

7 I+ D% U" `5 F妖城在线论坛
( G- i* d, e9 G9 @妖城在线论坛这时 游戏端 建立角色 显示建立成功.但是 没有角色. 防重名成功.
+ P6 G+ c8 }, k4 W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート魔力私服,最新魔力宝贝私服技术交流4 }8 C" n: }4 j4 m# b2 B& N4 K
这种方法,游戏,服务器 不会产生任何错误信息. 魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! p* ~. u/ P9 x% G/ n( R+ b
但是要保证 角色名'0' 和CDKEY'0' 不属于某玩家.说白了.就是GM把这帐号和角色名先注册掉.

* o* U5 Z. L5 P4 r魔力私服,最新魔力宝贝私服技术交流bbs.mocwww.com! W. P. Q: _" x) O0 _3 j0 v
方法2:
" k% e( j4 J. m0 Q8 G, d" B妖城在线论坛

; U; i& b5 S4 f* Y魔力私服,最新魔力宝贝私服技术交流解释:上面的语句可以看出. 在找到重名资料后, 触发器将 语句中的 cdkey设置成了null (空)妖城在线论坛' u+ `  ]$ |# U; d# M: h$ U
但是数据库中  CdKey  是主键, 不允许空. 所以 GMSV , n4 D  I: Q- L! z4 k  p) N
会报MYSQL执行错误的信息,
0 v6 y' w) s0 \2 u( W& O7 p魔力私服,最新魔力宝贝私服技术交流意思就是 CDKEY 字段不允许为NULL

# z( i$ Y7 x1 H8 G, P8 O魔力私服,最新魔力宝贝私服技术交流如图:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 S3 m* @* T& w
bbs.mocwww.com7 _& X% }) V( V  ?
魔力私服,最新魔力宝贝私服技术交流/ A5 F$ w( A* S; i7 O
同时客户端有错误提示.CG程序未汉化.魔力私服,最新魔力宝贝私服技术交流0 C' ^( M2 q% h) _5 t

$ \8 f) n4 W' i6 ^5 ^8 F—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートbbs.mocwww.com& U; r- Y# D: }$ C
翻译过来是角色创建失败.bbs.mocwww.com2 L& C# f- C. w* m
可以UE 修改成[名字重复].
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 Z+ n$ i2 {% v; y- ~& g
这种方法可以保证数据库的信息不会出错.但是GMSV报错看着比较难受.魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 K) t( G4 Y- {. P- b0 t
大家自行决定吧!魔力私服,最新魔力宝贝私服技术交流* A; l3 g3 q1 {7 C
抛砖引玉 触发器 可以做很多事情.大家加油开发出更多的功能吧!
魔力私服,最新魔力宝贝私服技术交流6 }7 {+ q$ \1 V$ T8 t4 k, h

* s9 S+ S/ ^, }6 x) @. p! B—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& m6 f0 i! Z; K# m3 c+ y

& a  C1 T3 h2 q) c: s# B+ g
" x( j9 R$ H& A% Xbbs.mocwww.com[ 本帖最后由 叶子 于 2013-6-13 02:16 编辑 ]
本帖最近评分记录
  • 小狐狸 妖力 +15 精品文章 2013-6-13 01:36
有事,请 -> 站内PM

TOP

支持,叶子

TOP

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

TOP

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

TOP

发新话题