在delphi中怎么连接ms sql server6.5,我看了其它的回答都不行?(25分)

  • 主题发起人 主题发起人 8848
  • 开始时间 开始时间
8

8848

Unregistered / Unconfirmed
GUEST, unregistred user!
我已经在客户端安装了ms sql server6.5,而且我使用pb是可以连接到服务器上的,我刚学delphi,看到以前大家的回答,所以我也在bde中配置了服务器名,数据库名,用户名,而且还输入了密码,但就是连接不上,另外是否通过dbe配置好以后,就可以在delphi中使用,但如果写程序的话,还应该怎么写,希望大家回答详细一点啊?分我都用完了255分,只剩25分,看来我要去申请8849了,不过没人给我打广告了。
 
在bde administrator中选一mssql类型,其database name添入数据库名,如master, host name为ip地址,server name填入服务器名,user name为sa,
设置完成后保存,以一别名保存,此别名为在delphi数据库控件使用的
detabase name .
 
写程序时对远端数据库的引用如同本地数据库一样,程序也一样写,但client/server方式的程序要充分利用服务器的性能,在程序中使用服务器的存储过程,程序要根据服务器做优化.
 
hawkview说的就行了
 
可能是你的SQLSERVER的安全模式设置有问题,SQLSERVER有三种模式:
standard:标准
intergrade:内建
mix: 混合
你可以选择后二个,但你的计算机必须是合法的域用户。而且使用合法的SQLSERVER
帐号登录。还有一个SET HOSTNAME TO USERNAME选项,决定是否将主机名映射为
用户名。应该没问题了!
 
那几个 Important DLL 都在吗?
 
你的情况更我的类似,我把我的代码给你,你参考一下,不过分数太少!^-^
在BDE中需要配置的一般有:SERVER NAME,HOST NAME,DATABASE NAME,USER,PASSWORD.
以下在DATABASE控件的ONLOGIN事件中写入:
LoginParams.Values['SERVER NAME'] := 'SERVER';
LoginParams.Values['USER NAME'] := 'sa';
LoginParams.Values['OPEN MODE'] := 'READ/WRITE';
LoginParams.Values['SCHEMA CACHE SIZE'] := '8';
LoginParams.Values['BLOB EDIT LOGGING'] := '';
LoginParams.Values['LANGDRIVER'] := 'ANSII850';
LoginParams.Values['SQLQRYMODE'] := '';
LoginParams.Values['SQLPASSTHRU MODE'] := 'SHARED NOAUTOCOMMIT';
LoginParams.Values['DATE MODE'] := '0';
LoginParams.Values['SCHEMA CACHE TIME'] := '-1';
LoginParams.Values['MAX QUERY TIME'] := '300';
LoginParams.Values['MAX ROWS'] := '-1';
LoginParams.Values['BATCH COUNT'] := '200';
LoginParams.Values['ENABLE SCHEMA CACHE'] := 'FALSE';
LoginParams.Values['SCHEMA CACHE DIR'] := '';
LoginParams.Values['HOST NAME'] := 'SERVER';
LoginParams.Values['APPLICATION NAME'] := '';
LoginParams.Values['NATIONAL LANG NAME'] := '';
LoginParams.Values['ENABLE BCD'] := 'FALSE';
LoginParams.Values['TDS PACKET SIZE'] := '4096';
LoginParams.Values['BLOBS TO CACHE'] := '64';
LoginParams.Values['BLOB SIZE'] := '32';
LoginParams.Values['ODBC DSN'] := 'fzdjj';
LoginParams.Values['ROWSET SIZE'] := '20';
LoginParams.Values['PASSWORD'] := oldpass;
注:客户端安装SQL SERVER客户端软件。
 
但在BDE中配置好以后,在delphi中怎么写程序,我怎么也看不到数据库的字段啊?再麻烦一下各位了,
 
用Tdatabase连接BDE配置好的别名,在用Ttable连接Tdatabase,在Ttable的属性
tablename选择你在mssql6.5刚刚建好的表,如果用鼠标双击Ttable,出现一个窗口,再单击右键,选择“Add All Fields”,就可以看到数据库的字段了!如果添加
TDbgrid和Tdatasource,Tdatasource连接Ttable,Tdbgrid的属性Datasource连
接Tdatasource,再把Ttable的属性Active设置为true,就可以在Tdbgrid显示数据了。


 
to 大家:但现在一旦我使用Ttable连接数据库,就让我输入用户名和密码,我输入以后,选择action = true,就出现一个对话框,提示我:missing tablename property.但是我的用户名和密码在pb中使用是正常的。不知怎么回事,。。。
 
missing tablename property是因为你没有在TTable的TableName 中没有值
 
to robertcool:说清楚一点吗?大哥,我还是不会啊?
 
你用d几?以前我用3,在客户端安装一下ms sql6.5的odbc驱动,
再到装sql6。5的服务器winnt/system32下烤一个ntwdb(名字记不住了)
之类的dll到客户端system下,应该没问题了
好久没用6。5了,7。0要强的多,干吗不用?

 
to hanfeng:是delphi5.0啦,
至少是专业版,但不知是否是
c/s版,不知如何区分?
但现在问题是我想使用DBE接口,
现在好象在DBE中没什么问题
,但是就在是DELPHI中无法看到
数据库中的表,我在同一台机器上
使用pb是正确的?
我已经搞不懂了,已经困惑了我一个星期了?
 
delphi 5 c/s 版splash窗口和about上有Enterprise字样
专业版估计是professinal之类,专业版不能连接后台数据库
delphi 处理数据库的方式和pb不太一样,你最好找本书看看
或者看看例子,别按老规矩办事
 
其实你可以一步一步来,第一步你用BDE连接Mssql6.5,看是否能连接得上,如果不
能连接上,说明BDE参数有错。BDE连接的方法:
DATABASE NAME:MSSQL6.5的数据库
SERVER NAME:机器名称
USER NAME:sa
你试一试open,能否连接上,如果连接不上,那就没有办法了。
第二步:假如能连接上,在form1添加Tdatabase,在属性AliasName选择你刚在BDE
配制的别名,在Databasename随便写,比如“DB”,然后把connected设置为
“true”,看是否成功。不过,既然BDE能连接上,这一步是肯定能连接得上。
第三步:假如第二步成功了,那么在form1添加Ttable,在Databasename选择
“DB”,在Tablename就可以看到你建交的表了。
还有一个问题,就是要连接mssql6.5得要delphi5的Enterprise版,专业版好象不行
的。
祝你好运!
 
接受答案了.
 
后退
顶部