sql数据库语句中点号.怎么转义?

关于数据库,如果带有点号(.)的数据库语句怎么写呢?比如我有一个数据库名称为work.com 我这样写 use work.com 会出错.........就是因为com之前有个点号 如果数据库语句中带有点号,是不是要转义呢?我网上查了好久,比如用单引号转义,或者用[ ]转义都不行,还有用ESCAPE 关键字定义转义符也不行。。也找不到其它关于点号转义的,跪求大神,非常感谢

转义要看情况,如果是你的库名、表明、字段名含有关键字或是不符合命名标准
即含字母数字下划线,都需要用[]括起来,以数字开头的也要用[]括起来
ESCAPE是用来转义字段内容的,比如说你要查询A字段里有_的内容
通常写法A like '%_%'由于_是通配符,这样系统就混乱了
所以需要escape转义 A like '%!_%' escape '!' 这样就能将_视为一个普通字符了
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-07-01
你好!
1.该数据库名称不标准,用[work.com]是可以的,
2.如果表名也存在类似的问题可以这样:[数据库名].[dbo].[表名]
3.关于转义符,是这样用的:
转义符:一般用[ ],[_]表示将"_"按字符处理
escape'/' 是说自定义转义符'/'
例子
select * from [user] where loginname like '%[_]cs'
select * from [user] where loginname like '%/_cs' escape'/'追问

都不行,我不是都已经说过了

追答

——————————————————————

你好!

1、看到你的截图了,你用的是mysql数据库!

mysql数据库命名:采用26个英文字母(区分大小写)和0-9这十个自然数,加上下划线'_'组成,共63个字符.不能出现其他字符(注释除外). 

所以“.”是不能出现的!

——————————————————————

而sqlserver中“.”是可以出现的,我在sqlserver中的截图如下

 

 

 

追问

那如果非得要用mysql呢?点号要怎么转义?非常感谢啊

本回答被提问者采纳
第2个回答  2012-07-01
我也觉着应该是use [work.com]追问

老兄,不行啊

 

第3个回答  2012-07-01
use [work.com]
也不行吗?追问

不行啊 我试过了

追答

mysql啊,用
`work.com`试试,

如果不行的话,确实没有办法了。

一般对象名就用字母,或者字母+数字,当然下划线是可以的,

其他字符就不要用了。

sql数据库语句中点号.怎么转义?
转义要看情况,如果是你的库名、表明、字段名含有关键字或是不符合命名标准 即含字母数字下划线,都需要用[]括起来,以数字开头的也要用[]括起来 ESCAPE是用来转义字段内容的,比如说你要查询A字段里有_的内容 通常写法A like '%_%'由于_是通配符,这样系统就混乱了 所以需要escape转义 A like '%...

相似回答