请教ORACLE的三个问题

6322zfx 2000-02-17 10:14:00
我的问题比较多,可能耽误大家一些时间,在这里首先对大家表示感谢!

1、ORACLE在安装时有一个SYS的别名INTERNAL用户,在安全管理器中是看不到的,我觉得这对于系统安全很不利,请问如何控制INTERNAL的权利,或者竟将其在系统中去掉?
2、请问ORACLE数据库是否也有专门的中文版?我的一台装有英文NT4的机器上装了ORACLE的SERVER,在一台装有中文WINDOWS98的机器上装了ORACLE的客户端,在安装客户端的过程中ORALCE的安装提示是中文的(所以我猜想这个ORACLE是中文的?)。而后,我通过客户端在服务器上建立了一些数据表,并且向其中输入了一些中文。当我通过客户端从服务器中查询数据时,发现显示的是乱码(可我的客户端是中文的呀)。我不知道应该如何解决这个问题,是必须改装中文NT吗?还是ORACLE也要改版本?另外,如果是在UNIX上装ORACLE(比如是solaris),这个问题如何解决?Solaris也分中英文版本的区别吗?(我几乎没有接触过UNIX)
3、目前我准备编写基于CGI和ORACLE数据库的WEB动态网页发布,有一些ASP的基础。我的问题是:如何实现PERL编写的CGI程序与ORACLE数据库的连接?我知道在WINDOWS平台上通常使用的是ODBC,在UNIX上使用什么?是JDBC吗?如果是,还有别的方案吗?

在次表示衷心的感谢!
...全文
377 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
6322zfx 2000-02-21
  • 打赏
  • 举报
回复
由于工作的原因,本人重新安装了中文的NT,关于中文的显示问题也就解决了,感谢各位网友的帮助,同时盼望能够对第一和第三个问题继续给以具体指点。
9Thoughts 2000-02-20
  • 打赏
  • 举报
回复
又及:注册表的NLS_LANG只对工具有效,对DB无效,以后记住安装DB时就选好NLS_LANGUAGE
9Thoughts 2000-02-20
  • 打赏
  • 举报
回复
2)
update sys.props$ set VALUE$ = '#############'
where name = 'NLS_LANGUAGE';
#############是与你的Client端相同的字符集名称,restart DB,以后输入的数据不会是乱码,但以前的就没有办法了
starmoon 2000-02-19
  • 打赏
  • 举报
回复
我碰到过你的情况。答复如下:
1)INTERNAL是不能去掉的,它是数据库管理员必须要用的,可以加上口令。所用命令如下:orapwd file=<fname> password=<password> entries=<users>
fname是存放口令的文件
internal 不是用户
2)这只是因为字符集不同,使用注册表编辑器把客户端ORACLE下的NLS_LANG的值改为AMERICAN_AMERICA.zhs16cgb231280即可.
3)可使用PERL DBI。
active 2000-02-18
  • 打赏
  • 举报
回复
客户端和服务器端的语言必须一致,你可以在客户端安装时选英语试试
Daisy 2000-02-18
  • 打赏
  • 举报
回复
具我所知在数据库创建之后,数据库的字符集是不能改的,只能重装了。
luckroc 2000-02-18
  • 打赏
  • 举报
回复
你重新输入中文试过了吗?修改NLS_LANG之前输入的中文的确是显示不了,修改后再输入的中文才能显示出来。
Tony_Yuan 2000-02-18
  • 打赏
  • 举报
回复
对不起刚才的copy错了,应该查以下三个参数:
NLS_LANGUAGE: AMERICAN
NLS_TERRITORY: AMERICA
NLS_CHARACTERSET: US7ASCII
所以我的注册表中值是:AMERICAN_AMERICA.US7ASCII
Tony_Yuan 2000-02-18
  • 打赏
  • 举报
回复
使用select * from nls_database_PARAMETErs查出以下两个参数的值:
NLS_DATE_LANGUAGE
NLS_CHARACTERSET
再修改注册表
如我的机器上是:
NLS_DATE_LANGUAGE : AMERICAN
NLS_CHARACTERSET : US7ASCII
所以注册表中应是:AMERICAN_AMERICA.US7ASCII
6322zfx 2000-02-17
  • 打赏
  • 举报
回复
故障依旧
active 2000-02-17
  • 打赏
  • 举报
回复
2).ORACLE 8.1.5 for NT有简体中文的
luckroc 2000-02-17
  • 打赏
  • 举报
回复
1)INTERNAL是不能去掉的,它是数据库管理员必须要用的,可以加上口令。所用命令如下:orapwd file=<fname> password=<password> entries=<users>
fname是存放口令的文件
2)这只是因为字符集不同,使用注册表编辑器把ORACLE下的NLS_LANG的值改为AMERICAN_AMERICA.zhs16cgb231280即可.
3)我没用过PERL,不太清楚。
最近在研究如何用 易语言 连接oracle数据库,搜集了网上很多源码和请教了一些人都没能测试成功。 经过不懈努力,我终于测通了!哈哈哈哈~ 不过,我想吐槽的是: 在搜集资料过程中,发现很多人都说易语言很难连上oracle,讲真,我也觉得官方不够给力! oracle作为全球第一大数据库厂商,为什么出易语言的官方支持库来适配呢? 虽然说可以通过调用windows的odbc来连,但这对不懂的人来说是很困难的一件事! 所以,真心希望官方能开发出oracle的支持库!!! 在测试过程中,我总结了以下几个需要注意的点: 1、无论你的电脑是32位还是64位,都必须安装32位的oracle客户端。安装类型可以是:管理员、运行时。 2、从oracle 11g以后,oracle官方不再提供32位的客户端安装介质。目前最新的oracle客户端为win32_11gR2_client.zip,可直接从官网下载。 3、选择DRIVER连接时,需要先在$ORACLE_HOME/network/admin/tnsnames.ora文件中的定义的一个连接名,测试成功后再将连接名配置在SERVER(连接服务名)中。 4、选择DSN连接时,需要先在OS系统数据源(32位)中配置好数据源,测试成功后再将数据源名称配置在DSN(数据源)中。 只要你按照以上几点来,就肯定可以用易语言连接oracle,并执行简单查询。 我自己的测试代码已分享出来了,需要oracle客户端的朋友可以去官方下载,也可以私信我。 好了,第一次参加这么盛大的活动,小小意思,请各位看官指点,谢谢!

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧