社区
MS-SQL Server
帖子详情
字段名使用关键字有哪些潜在的危险
anison
2007-11-30 12:43:35
很多表里都有编号字段,比如Owner表
我不想叫OwnerNo,直接用No的话又跟关键字一样
虽然暂时没什么问题。。。但是有没潜在的危险?
...全文
454
19
打赏
收藏
字段名使用关键字有哪些潜在的危险
很多表里都有编号字段,比如Owner表 我不想叫OwnerNo,直接用No的话又跟关键字一样 虽然暂时没什么问题。。。但是有没潜在的危险?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
bestzrz
2007-12-02
打赏
举报
回复
一直不太明白[]是干什么的...原来是这样啊.. . 学习了
w2jc
2007-12-02
打赏
举报
回复
呵呵,看来结论就是最好不要用关键字,一是麻烦,得用[ ],二是可能有些莫名奇怪的问题。
还不如花点时间制定了命名规范,比如 owner_id 或者 OwnerID 就是两种风格不同的规范。
再就是建立一个数据字典,好好检查一下有没有不符合上面所说的情况。
阿里呆呆
2007-11-30
打赏
举报
回复
呵呵 我也是刚刚明白[]的意义
yesyesyes
2007-11-30
打赏
举报
回复
不是危险
而是麻烦
比如
select [select]
from [from]
where [where]=1
group by [group]
order by [order]
好玩吧
anison
2007-11-30
打赏
举报
回复
最好是不要和默认关键字冲突,
OwnerNo 没有什么不好的,简单而且也明确
-------
那Owner表字段命名为了保持一致 那岂不是所有字段都要加Owner前缀
Gangzai1983
2007-11-30
打赏
举报
回复
做人要厚道!!!
ojuju10
2007-11-30
打赏
举报
回复
用关键子作为字段比较慢,要在字段上加[]
有些关键子系统会默认是字段名,例如:name
有些关键子作为字段,必须要加[],例如:[select]
fwacky
2007-11-30
打赏
举报
回复
select [column]
from [where]
where [column] = 1
-狙击手-
2007-11-30
打赏
举报
回复
建议不用,但是如果非要用,一定在以后 角本时加 '[]'
fa_ge
2007-11-30
打赏
举报
回复
最好不用关键字,意义上也让人产生歧意,不好理解.
命名最好按楼上说的一样
JL99000
2007-11-30
打赏
举报
回复
字段命名时我觉得还是用前后缀,我命名时都用name_ch,id_i这种
lgzxz999
2007-11-30
打赏
举报
回复
一直不太明白[]是干什么的...原来是这样啊.. . 学习了
hui_hui_2007
2007-11-30
打赏
举报
回复
最好不用关键字,虽然微软自带的示例库中字段名也是关键字,估计那是一种示例的作用,告诉大家,与关键字重名时如何处理。
如果是关键字,就加上定界符[]吧。
tianhuo_soft
2007-11-30
打赏
举报
回复
不能做insert等操作
我以前定义了一个 name字段结果找了一天没找到原因
anison
2007-11-30
打赏
举报
回复
最好是不要和默认关键字冲突,
OwnerNo 没有什么不好的,简单而且也明确
-------
那Owner表字段命名为了保持一致 那岂不是所有字段都要加Owner前缀!!!??
实际上我只有no name size 会跟关键字冲突
而用在select insert delete 中不会有什么问题吧。。
有点穿牛角尖了。。
yesyesyes
2007-11-30
打赏
举报
回复
我只是举例子,比如还有(都是开玩笑啦)
create database [database]
create table [table]
create view [view]
create proc [proc]
grant all on [on] to [to]
等等
w2jc
2007-11-30
打赏
举报
回复
最好是不要和默认关键字冲突,
OwnerNo 没有什么不好的,简单而且也明确
实在要用和关键字有冲突的,用方括号[]
select [column]
from [where]
where [column] = 1
nobody@noone
2007-11-30
打赏
举报
回复
不是危险
而是麻烦
比如
select [select]
from [from]
where [where]=1
group by [group]
order by [order]
好玩吧
===========================
大哥,你这个肯定会报
列 [select] 在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中。
ojuju10
2007-11-30
打赏
举报
回复
最好避免下关键字
【ASP.NET编程知识】ASP.NET过滤类SqlFilter,防止SQL注入 .docx
【ASP.NET编程知识】ASP.NET过滤类SqlFilter,防止SQL注入 .docx
C#教程----快速入门
《C#教程》这个原本是从百度文库下载的,觉得写得挺好的,就做好了书签然后传上来。这本书只有280多页,介绍了C#的基本知识,适合快速入门。
asp.net利用HttpModule实现防sql注入
1、新建一个类,实现IHttpModule接口 代码 代码如下: public class SqlHttpModule : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) { context.AcquireRequestState += new EventHandler(context_AcquireRequestState); } } 在实现接口的Init方法时,我们选择了AcquireRequestState事件,为什么不是Begin_Request事件呢?这是因为我们在
打造网站的坚盾——SQL注入防范专题——SQL注入防范之完善网站程序.pdf
打造网站的坚盾——SQL注入防范专题——SQL注入防范之完善网站程序.pdf
服务器中间件加固,防火墙加固,日志安全管理
iis 加固,防火墙加固,日志安全管理,tomcat安全加固,apache安全加固,oracle安全加固。
MS-SQL Server
34,837
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章