可以
在SQL SERVER中标识符共有两种类型:一种是规则标识符(Regular identifer),一种是界定标识符(Delimited identifer)。
其中,规则标识符严格遵守标识符的有关格式的规定,所以在Transact_SQL中凡是规则运算符都不必使用定界符。对于不符合标识符格式的标识符要使用界定符[]或‘ ’。
标识符格式:
1、标识符必须是统一码(Unicode)20标准中规定的字符,以及其他一些语言字符。如汉字
2、标识符后的字符可以是(除条件一)“_”、“@”、“#”、“$”及数字。
3、标识符不允许是Transact-SQL的保留字。
4、标识符内不允许有空格和特殊字符。
另外,某些以特殊符号开头的标识符在SQL SERVER 中具有特定的含义。如以“@”开头的标识符表示这是一个局部变量或是一个函数的参数;以#开头的标识符表示这是一个临时表或是一存储过程。以“##”开头的表示这是一个全局的临时数据库对象。Transact-SQL的全局变量以“@@”开头。标识符最多可以容纳128个字符。
试试
create or replace
procedure selectnowgoods(pagenow in number,pagesize in number ,
myrows out number,mypagecount out number,mycursor out mypagecursor_emp)
is
v_sql VARCHAR2(1000);
v_rules VARCHAR2(1000);
v_begin NUMBER:=(pagenow-1) pagesize+1;
v_end NUMBER:= pagenow pagesize;
BEGIN
v_sql:='select from(select t1, rownum rn from (select from tb_goods where newgoods=''是'' ) t1 where rownum <='|| v_end||') where rn>='|| v_begin || '';
open mycursor for v_sql;
v_sql:='select count() from tb_goods where newgoods=''是''';
EXECUTE IMMEDIATE v_sql into myrows;
if mod(myrows, pagesize)=0 then
mypagecount:=myrows/ pagesize;
else
mypagecount:= myrows/ pagesize+1;
end if;
end;
上面说的对,你email char(100),
这最后多了个逗号,去掉就好。还有number在oracle里面是关键字,但是在sql server里面可以用。不过,还是建议你换一个名字吧,导入到oracle的时候会报错。
清理掉在执行的数据库应用,重新安装即可。在重新安装oracle过程中,如果卸载不干净,很可能在新的oracle安装时出现:指定的 Oracle 系统标识符 (SID) 已在使用,说明已经安装有该名的数据库了,起个别的名字,或者清理所有应用重新安装,下面介绍问题的解决详细教程。
1 任务管理器右击,选择服务页面,打开打开服务。
2 不行的话,运行regedit,选择HKEY_LOCAL_MACHINE SOFTWARE ORACLE,按del键删除这个入口。
3 运行regedit,选择HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Services,滚动这个列表,删除所有Oracle入口。
以上就是关于SQL Server中数据库的名称是否允许是中文全部的内容,包括:SQL Server中数据库的名称是否允许是中文、oracle数据库中提示标识符错误、数据库问题,标识符无效,大婶帮忙看看怎么回事啊,在线等等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)