仓酷云
标题:
MSSQL编程:Sql Server顶用变量名作为表名的办理方...
[打印本页]
作者:
海妖
时间:
2015-1-16 22:40
标题:
MSSQL编程:Sql Server顶用变量名作为表名的办理方...
mysql的prepare其实是本地PHP客户端模拟的,并没有根据你mysql的设置做字符集的调整。应该交与mysqlserver端做prepare,同时得调用mysql_set_character_set去操作,server才会按照字符集去做转义。server|变量|办理
比来写procedure,碰到一些成绩。个中我以为关于“用变量名作为表名”的成绩较有代价,写出和人人一同分享。请列位如有好的办理计划必定要不惜见教。
情形:
假如你在写procedure时要依据特定变量的值静态创立table(表名是全体或部分特定变量的值)。比方:
declare@tablenamechar(10)
//ifsomestatement
set@tablename=test
你想用变量@tablename的值作为表名创立一个新表,那末用createtable@tablename(testchar(8))语句在SQLserver2k中实行就会碰到成绩,
办理(接上例):
//假如表不存在则创立
IFnotEXISTS(SELECTnameFROMsysobjects
WHEREname=@tablenameANDtype=U)
begin
set@createtable=createtable+@tablename+(mynamechar(2))
exec(@createtable)
end
<完>
php本地模拟的prepare底层就是mysql_real_escape_string,所以必须得用mysql_set_character_set去设置mysql->charset,否则就存在字符集问题。
作者:
海妖
时间:
2015-1-18 21:14
你可以简单地认为适合的就是好,不适合就是不好。
作者:
谁可相欹
时间:
2015-1-23 17:54
所以你总能得到相应的升级版本,来满足你的需求。
作者:
只想知道
时间:
2015-1-31 18:36
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
作者:
飘飘悠悠
时间:
2015-2-6 20:58
所以你总能得到相应的升级版本,来满足你的需求。
作者:
再见西城
时间:
2015-2-18 19:21
不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关
作者:
山那边是海
时间:
2015-3-6 09:11
语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!
作者:
爱飞
时间:
2015-3-12 23:06
习惯敲命令行的朋友可能会爽一些。但是功能有限。适合机器跑不动SQLServerManagementStudio的朋友使用。
作者:
深爱那片海
时间:
2015-3-20 05:10
如果处理少量数据,比如几百条记录的数据,我不知道这两种情况哪个效率更高,如果处理大量数据呢?比如有表中有20万条记录.
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2