DB, ADODB;
procedure TForm1.SpeedButton3Click(Sender: TObject);
Var
adoquery: tadoquery;
begin
adoquery:=tadoquery.Create(self);
with adoquery do
begin
try
ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=server_test;Data Source=database_test';
//数据库服务器为server_test,数据库为database_test,登陆用户名为sa,密码为空
SQL.Clear;
SQL.Add('select * from table_test where a <> 0');
Active:=true;
showmessage(FieldByName('a').AsString);
finally
Free;
end;
end;
end;
——ConnectionString := ……这一行总是不对???
15 个解决方案
#1
o哦,我给的代码是用tadoquery的,数据库那一行该怎么写?
TQuery的连接呢?该怎么写?
TQuery的连接呢?该怎么写?
#2
我知道通过手动设置:先在Bde中建立Sql Server的数据库别名aaa
TDatabase Name Database1
AliasName aaa
DatabaseName 任意设置一个数据库名
LoginPrompt False
Params username=用户名 password=密码
Connected true
TQuery DatabaseName 和Tatabase的DatabaseName属性一致
Sql 放入Sql语句
Active True
——我给出的代码中的那一行就是完成类似工作的,但是代码该如何实现呢?谢谢!!!
TDatabase Name Database1
AliasName aaa
DatabaseName 任意设置一个数据库名
LoginPrompt False
Params username=用户名 password=密码
Connected true
TQuery DatabaseName 和Tatabase的DatabaseName属性一致
Sql 放入Sql语句
Active True
——我给出的代码中的那一行就是完成类似工作的,但是代码该如何实现呢?谢谢!!!
#3
数据库那一行可以在控件里面去点,它会自动生成的~
根据你选择的再复制过来就行了
query可以在里面设置数据库名和表名吧
根据你选择的再复制过来就行了
query可以在里面设置数据库名和表名吧
#4
——谢谢◎!!!!
——用TQuery连接sql server时,用户、密码是怎么用代码设置的呢?
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
//Database1.Params //username=用户名,password=密码????
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
——用TQuery连接sql server时,用户、密码是怎么用代码设置的呢?
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
//Database1.Params //username=用户名,password=密码????
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
#5
Params.Values['USER NAME']:=userid;
Params.Values['PASSWORD']:=password;
Params.Values['PASSWORD']:=password;
#6
用ado吧,用bde是因为delphi5版本中的ado bug太多,现在已经没有什么问题了,bde太麻烦了
#7
——谢谢你,hongqi162(失踪的月亮)
——我改成了这样,运行时还是报错,无效的用户名、密码;怎么回事呢?谢谢:
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
Params.Values['USER NAME']:= 'sa';
Params.Values['PASSWORD']:= ''; //密码为空
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
——我改成了这样,运行时还是报错,无效的用户名、密码;怎么回事呢?谢谢:
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
Params.Values['USER NAME']:= 'sa';
Params.Values['PASSWORD']:= ''; //密码为空
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
#8
报错大概是说,没有与新人的连接相关联;
是否还要指定server name之类的?
是否还要指定server name之类的?
#9
你没有测试连接是否成功。
或者你自己手动配置一下,看看原因在哪里?
或者你自己手动配置一下,看看原因在哪里?
#10
我用代码生成的TDatabase做连接,就一定要指定别名吗?下面这样还是不行?
——我用TDatabase控件配置过的,只要指定好别名(在BDE里设好的)等就可以了;
——但是用代码实现该怎么办呢?不要手动去BDE里设置什么数据库别名
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
Params.Values['ServerName'] := 'server_test';//sql server服务器
Params.Values['DATABASE NAME'] :='fundrun';//连接的默认数据库
Params.Values['USER NAME'] :='sa';
Params.Values['PASSWORD'] := '';
DriverName := 'MSSQL';
KeepConnection := True;
TransIsolation := tiDirtyRead;
DataBaseName := 'fundrun';//那这个DataBaseName又是什么呢???
LoginPrompt := False;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
——我用TDatabase控件配置过的,只要指定好别名(在BDE里设好的)等就可以了;
——但是用代码实现该怎么办呢?不要手动去BDE里设置什么数据库别名
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
Params.Values['ServerName'] := 'server_test';//sql server服务器
Params.Values['DATABASE NAME'] :='fundrun';//连接的默认数据库
Params.Values['USER NAME'] :='sa';
Params.Values['PASSWORD'] := '';
DriverName := 'MSSQL';
KeepConnection := True;
TransIsolation := tiDirtyRead;
DataBaseName := 'fundrun';//那这个DataBaseName又是什么呢???
LoginPrompt := False;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
#11
————我要用代码实现,各位,有会的吗?
帮忙啊
帮忙啊
#12
var
temp_Database:tdatabase;
query:tquery;
datasource:tdatasource;
begin
temp_Database:=tdatabase.Create(nil);
with temp_Database do
begin
Connected:=false;
Params.Clear;
Params.Values['user name']:='sa';
params.Values['password']:='';
LoginPrompt:=false;
databasename:='fundrun';
end;
try
temp_Database.Connected:=true;
query1.active:=false;
query1.DatabaseName:='fundrun';
query1.active:=True;
//
except
//
end;
end;
temp_Database:tdatabase;
query:tquery;
datasource:tdatasource;
begin
temp_Database:=tdatabase.Create(nil);
with temp_Database do
begin
Connected:=false;
Params.Clear;
Params.Values['user name']:='sa';
params.Values['password']:='';
LoginPrompt:=false;
databasename:='fundrun';
end;
try
temp_Database.Connected:=true;
query1.active:=false;
query1.DatabaseName:='fundrun';
query1.active:=True;
//
except
//
end;
end;
#13
——问题已经解决,注销掉这一句:DriverName := 'MSSQL';
——DriverName 跟KeepConnection := True;不能同时指定。
——DriverName 跟KeepConnection := True;不能同时指定。
#14
hongqi162(失踪的月亮) ( ) 信誉:105
——不指定'ServerName'都能行?
——不指定'ServerName'都能行?
#15
谢谢,对于本地的就能象你这么做
#1
o哦,我给的代码是用tadoquery的,数据库那一行该怎么写?
TQuery的连接呢?该怎么写?
TQuery的连接呢?该怎么写?
#2
我知道通过手动设置:先在Bde中建立Sql Server的数据库别名aaa
TDatabase Name Database1
AliasName aaa
DatabaseName 任意设置一个数据库名
LoginPrompt False
Params username=用户名 password=密码
Connected true
TQuery DatabaseName 和Tatabase的DatabaseName属性一致
Sql 放入Sql语句
Active True
——我给出的代码中的那一行就是完成类似工作的,但是代码该如何实现呢?谢谢!!!
TDatabase Name Database1
AliasName aaa
DatabaseName 任意设置一个数据库名
LoginPrompt False
Params username=用户名 password=密码
Connected true
TQuery DatabaseName 和Tatabase的DatabaseName属性一致
Sql 放入Sql语句
Active True
——我给出的代码中的那一行就是完成类似工作的,但是代码该如何实现呢?谢谢!!!
#3
数据库那一行可以在控件里面去点,它会自动生成的~
根据你选择的再复制过来就行了
query可以在里面设置数据库名和表名吧
根据你选择的再复制过来就行了
query可以在里面设置数据库名和表名吧
#4
——谢谢◎!!!!
——用TQuery连接sql server时,用户、密码是怎么用代码设置的呢?
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
//Database1.Params //username=用户名,password=密码????
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
——用TQuery连接sql server时,用户、密码是怎么用代码设置的呢?
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
//Database1.Params //username=用户名,password=密码????
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
#5
Params.Values['USER NAME']:=userid;
Params.Values['PASSWORD']:=password;
Params.Values['PASSWORD']:=password;
#6
用ado吧,用bde是因为delphi5版本中的ado bug太多,现在已经没有什么问题了,bde太麻烦了
#7
——谢谢你,hongqi162(失踪的月亮)
——我改成了这样,运行时还是报错,无效的用户名、密码;怎么回事呢?谢谢:
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
Params.Values['USER NAME']:= 'sa';
Params.Values['PASSWORD']:= ''; //密码为空
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
——我改成了这样,运行时还是报错,无效的用户名、密码;怎么回事呢?谢谢:
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
AliasName := 'test';
DatabaseName := 'fundrun';
LoginPrompt := false;
Params.Values['USER NAME']:= 'sa';
Params.Values['PASSWORD']:= ''; //密码为空
Connected := true;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
#8
报错大概是说,没有与新人的连接相关联;
是否还要指定server name之类的?
是否还要指定server name之类的?
#9
你没有测试连接是否成功。
或者你自己手动配置一下,看看原因在哪里?
或者你自己手动配置一下,看看原因在哪里?
#10
我用代码生成的TDatabase做连接,就一定要指定别名吗?下面这样还是不行?
——我用TDatabase控件配置过的,只要指定好别名(在BDE里设好的)等就可以了;
——但是用代码实现该怎么办呢?不要手动去BDE里设置什么数据库别名
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
Params.Values['ServerName'] := 'server_test';//sql server服务器
Params.Values['DATABASE NAME'] :='fundrun';//连接的默认数据库
Params.Values['USER NAME'] :='sa';
Params.Values['PASSWORD'] := '';
DriverName := 'MSSQL';
KeepConnection := True;
TransIsolation := tiDirtyRead;
DataBaseName := 'fundrun';//那这个DataBaseName又是什么呢???
LoginPrompt := False;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
——我用TDatabase控件配置过的,只要指定好别名(在BDE里设好的)等就可以了;
——但是用代码实现该怎么办呢?不要手动去BDE里设置什么数据库别名
temp_Database := TDatabase.Create(self);
with temp_Database do
begin
Params.Values['ServerName'] := 'server_test';//sql server服务器
Params.Values['DATABASE NAME'] :='fundrun';//连接的默认数据库
Params.Values['USER NAME'] :='sa';
Params.Values['PASSWORD'] := '';
DriverName := 'MSSQL';
KeepConnection := True;
TransIsolation := tiDirtyRead;
DataBaseName := 'fundrun';//那这个DataBaseName又是什么呢???
LoginPrompt := False;
end;
Query1.Active := false;
Query1.DatabaseName := temp_Database.DatabaseName;
Query1.Active := true;
temp_Database.Free;
#11
————我要用代码实现,各位,有会的吗?
帮忙啊
帮忙啊
#12
var
temp_Database:tdatabase;
query:tquery;
datasource:tdatasource;
begin
temp_Database:=tdatabase.Create(nil);
with temp_Database do
begin
Connected:=false;
Params.Clear;
Params.Values['user name']:='sa';
params.Values['password']:='';
LoginPrompt:=false;
databasename:='fundrun';
end;
try
temp_Database.Connected:=true;
query1.active:=false;
query1.DatabaseName:='fundrun';
query1.active:=True;
//
except
//
end;
end;
temp_Database:tdatabase;
query:tquery;
datasource:tdatasource;
begin
temp_Database:=tdatabase.Create(nil);
with temp_Database do
begin
Connected:=false;
Params.Clear;
Params.Values['user name']:='sa';
params.Values['password']:='';
LoginPrompt:=false;
databasename:='fundrun';
end;
try
temp_Database.Connected:=true;
query1.active:=false;
query1.DatabaseName:='fundrun';
query1.active:=True;
//
except
//
end;
end;
#13
——问题已经解决,注销掉这一句:DriverName := 'MSSQL';
——DriverName 跟KeepConnection := True;不能同时指定。
——DriverName 跟KeepConnection := True;不能同时指定。
#14
hongqi162(失踪的月亮) ( ) 信誉:105
——不指定'ServerName'都能行?
——不指定'ServerName'都能行?
#15
谢谢,对于本地的就能象你这么做