|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
这章描述如何检查和处理在MySQL数据库中的数据损坏。如果你的表损坏很多,你应该尝试找出其原因!见G.1调试一个MySQL服务器。数据|数据库1.1数据库移植注重事项1.1.1取前n笔记录
SQLServer:
Selecttopn*fromxtable
Oracle:
Select*fromxtablewhererownum<=n
DB2:
Select*fromxtablefetchfirstnrowsonly
1.1.2取以后日期
SQLServer:
Selectgetdate()
Oracle:
Selectsysdatefromdual
DB2:
Selectcurrenttimestampfromsysibm.sysdummy1
1.1.3毗连字符串
SQLServer:
SelectHello+Toone
Oracle:
SelectHello||Toonefromdual
DB2:
SelectHello||Toonefromsysimb.sysdummy1
1.1.4空值转换
SQLServer:
SELECTuserid,username,isnull(email,0)FROMAUTH_USER
Oracle:
SELECTuserid,username,nvl(email,0)FROMAUTH_USER
DB2:
SELECTuserid,username,value(email,0)FROMAUTH_USER
1.1.5范例转换
SQLServer:
SELECTconvert(varchar,getdate(),20)
Oracle:
SELECTto_char(sysdate,yyyy-mm-ddhh24:mi:ss)fromdual
DB2:
SELECTvarchar(currenttimestamp)fromsysibm.sysdummy1
注1:
■SQLServer直达换日期格局改动Style参数:20;
■Oracle直达换日期格局改动格局化参数:yyyy-mm-ddhh24:mi:ss
‘yyyy’、’mm’、’dd’、’hh12’、’hh24’、’mi’、’ss’等;
■Db2直达换日期格局改动体系常量:currenttimestamp
‘currentdate’、’currenttime’等;
注2:
■SQLServer数据范例改动“数据范例参数”:int、varchar等;
■Oracle数据范例改动函数:to_char()、to_date()、to_number()等;
■DB2数据范例改动函数:varchar()、int()、date()、time()等;
1.1.6取值判别
SQLServer:
selectcaseConvert=
casewheng.master_type=systemthen办理员
wheng.master_type=roletypethen特别脚色
else一般用户
end
fromglobal_codeg
Oracle:
selectcaseg.master_type
whensystemthen办理员
whenroletypethen特别脚色
else一般用户
end
AScaseConvert
fromglobal_codeg
DB2:
selectcaseg.master_type
whensystemthen办理员
whenroletypethen特别脚色
else一般用户
end
AScaseConvert
Fromglobal_codeg
1.1.7地位
SQLServer:
selectcharindex(E,ABCDEF)
selectpatindex(%E%,ABCDEF)
Oracle:
selectinstr(ABCDEF,E)fromdual
DB2:
Selectlocate(E,ABCDEF)fromsysibm.sysdummy1
1.1.8其他函数
SQLServer
Oracle
DB2
长度
Len()
Length()
Length()
取子串
Substring()
Substr()
Substr()
1.2附1.2.1DB2V8.1经常使用命令
■创立数据库
在服务器上实行
db2CREATEDBoatemp
■删除数据库
在服务器上实行
db2DROPDBoatemp
■创立表空间
db2"CREATEUSERTEMPORARYTABLESPACEUSERSPACE1MANAGEDBYSYSTEMUSING(USERSPACE1)"
■启动数据库
切换用户
su–db2inst1
启动数据库:
db2start
■封闭数据库
切换用户
su–db2inst1
封闭数据库
db2stop[force]
■创立远程办理节点
进进DB2命令窗口
db2CATALOGTCPIPNODEasnodeREMOTE10.1.22.176SERVER50000
db2CATALOGDBoadb2ASoadb2ATNODEasnode
■毗连数据库
db2CONNECTTOoadb2USERdb2inst1USINGibmdb2
■封闭数据库毗连
db2terminate
■实行剧本
db2-td!-vfioa2.db2-zinfo.log
■导出剧本
db2look-doadb2-idb2inst1-wibmdb2-e-oputsql.db2-tauth_user
db2look-doadb2-idb2inst1-wibmdb2-e-oputsq.db2
■检察正在利用的端口
netstat-a
■查询体系表
selectcount(*)fromSYSCAT.TABLESwhereTABSCHEMA=’DB2INST1’
selectcount(*)fromSYSCAT.PROCEDURESwherePROCSCHEMA=’DB2INST1’
■经常使用命令
DB2"SELECTDROPTALBE||TABNAMEFROMSYSCAT.TABLESWHERET
ABSCHEMA=DB2INST1ANDTYPE=T">db2droptables.db2
DB2"SELECTDROPVIEW||TABNAMEFROMSYSCAT.TABLESWHERET
ABSCHEMA=DB2INST1ANDTYPE=V">db2dropviews.db2
DB2–vfdb2droptables.db2–zinfo.log
db2"SELECTusernameFROMauth_userFETCHFIRST3ROWSONLY"
■启动JDBC
db2jstrtJDBCAPPLETSERVER6789(在服务器上实行)
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。 |
|