发新话题
打印

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

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

防重名的办法有很多.CG和GMSV 有条件的话都是可以做到的.妖城在线论坛1 D* q; H# I8 A- m% z5 G2 e0 x
现在告诉大家一个另类的办法.

' K5 ^4 d3 y! a  h+ u; J/ F妖城在线论坛魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表! F$ ^7 N+ S/ r% F% N( Y" @
触发器妖城在线论坛) b% d3 ]7 E: ]5 M: U* o1 O% s

5 ^5 M( e7 W3 x# `$ a条件: mysql 5.X
5 Y; p* q4 j& a魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表3 H8 }! @, v4 Q
Navicat 打开数据库, 右键tbl_character表 选择 设计表 - > 触发器
/ p1 h& D$ h$ K* s5 l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表bbs.mocwww.com5 }' o9 q- ]( C" x
下面介绍两种写法.
3 y$ ^- T$ m& }5 z* Q; V, _+ h妖城在线论坛妖城在线论坛4 O0 X  t2 c; j, w0 \5 ]) D5 z
方法1:
2 d( H; Y9 I+ y0 N9 l魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
8 N5 L/ R0 Z7 U' ^) B. A0 b; |9 K, \3 l, B, u# v
解释: —魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" |; I: r% L4 _3 [
在插入数据前触发.如果有重复名的. 自动将插入的 name 字段 和 cdkey 字段 设置成 '0'
. w( a8 [- f. i" f—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート修改后的语句仍然是正常的. 但是这个新建立的 名字:0 的角色 已经不属于玩家了.而是属于帐号:'0'
bbs.mocwww.com* M, T- |9 W, o1 M  q7 ]2 {
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 K: G* q) F4 O$ l, Y1 t
这时 游戏端 建立角色 显示建立成功.但是 没有角色. 防重名成功.
9 y( E, X" ?  Z. D2 r  |魔力私服,最新魔力宝贝私服技术交流+ V) N9 [$ q9 w1 J- j5 L
这种方法,游戏,服务器 不会产生任何错误信息.
* `! `3 m6 L9 v. _+ Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート但是要保证 角色名'0' 和CDKEY'0' 不属于某玩家.说白了.就是GM把这帐号和角色名先注册掉.
魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表8 F$ |. U2 O, W4 \$ q
bbs.mocwww.com" N, C* U1 E; y7 o
方法2:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート0 ]1 X# H1 E/ q0 H8 Q

; N1 `  Q6 e/ D) R$ b6 _妖城在线论坛解释:上面的语句可以看出. 在找到重名资料后, 触发器将 语句中的 cdkey设置成了null (空)bbs.mocwww.com9 _8 x4 T  B/ _+ U( O/ u
但是数据库中  CdKey  是主键, 不允许空. 所以 GMSV
/ @4 x. h# a6 Q1 f魔力私服,最新魔力宝贝私服技术交流会报MYSQL执行错误的信息,
$ p/ X7 }9 ^" b1 R' r% w; t—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート意思就是 CDKEY 字段不允许为NULL

9 r1 {4 L7 I% u7 S' K! O$ Y—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート如图:
3 D$ Q! m+ y* X魔力私服,最新魔力宝贝私服技术交流
( t7 R) \6 A& X' N' b魔力私服,最新魔力宝贝私服技术交流
0 X. @8 d9 }' `$ K4 j, _( \bbs.mocwww.com同时客户端有错误提示.CG程序未汉化.bbs.mocwww.com3 s) Z: l  Z# a/ i

5 n# j9 [, R. R, d$ A魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
$ O6 g; V* L; A0 Ebbs.mocwww.com翻译过来是角色创建失败.
. ~  A6 h8 d3 K  a6 F8 x魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表可以UE 修改成[名字重复].

' Q& |5 h0 M3 l1 e# g魔力私服,最新魔力宝贝私服技术交流这种方法可以保证数据库的信息不会出错.但是GMSV报错看着比较难受.—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート" u+ T3 e: M2 _$ [2 K
大家自行决定吧!5 ?+ B4 I# ~0 `+ L
抛砖引玉 触发器 可以做很多事情.大家加油开发出更多的功能吧!
( [  P4 a! @1 u) I% _

7 }7 a: J3 ^' r! {- D) e+ N+ G妖城在线论坛
: M& m# R+ m- W/ B" T魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表

8 \6 V4 G2 `4 v5 p& b# f% g4 ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表
9 j) W0 H# q+ d* a3 j& |bbs.mocwww.com[ 本帖最后由 叶子 于 2013-6-13 02:16 编辑 ]
本帖最近评分记录
  • 小狐狸 妖力 +15 精品文章 2013-6-13 01:36
有事,请 -> 站内PM

TOP

发新话题