![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как получить пользователя из SQLConnection?? [D7, SAP DB]
LinOS © (2003-07-09 08:24:00)Имеется компонент TSQLConnection. Через него присоединяюсь к БД. После соединения хочу узнать имя пользователя, под которым приконектился.
Garyck (2003-07-10 08:47:00) [1]Если разговор ведется об имени компа, с которого идет соединение, то так:
procedure TfrmWork.FormCreate(Sender: TObject);
Var
dwSize : Cardinal;
szBuffer : PChar;
begin
dwSize:=MAX_COMPUTERNAME_LENGTH+1;
GetMem(szBuffer,dwSize);
GetComputerName(szBuffer,dwSize);
CompName:=String(szBuffer);
FreeMem(szBuffer,dwSize);
End;
bolega (2003-07-09 20:05:00) [2]кусок из работающей SP:
возвращает
в @Domain - имя домена пользователя
в @User - NETBIOS-имя компьютера пользователя
declare @su varchar(64),@n int, Domain varchar(32), @User varchar(32)
set @su=system_user
set @n=charindex("\",@su)
set @Domain=substring(@su,1,@n-1)
set @User=substring(@su,@n+1,32)
LinOS (2003-07-09 12:19:00) [3]Спасибо за высказывания.
По поводу dbxconnections.ini, если в нем не задан пользователь по умолчанию, то и не узнаешь его.
Только, как Stas заметил буду пробовать из базы вытаскивать.
Stas (2003-07-09 11:35:00) [4]Незнаю как в SAP DB, а в MS SQL есть функция которая возвращает имя пользователя. Скорее всего и у тебя должно быть.
sniknik (2003-07-09 11:23:00) [5]хочеш сложностей пиши хук на клавиатуру следи за вводом и "вытаскивай" (можно еще пару извращений придумать, скажи я постараюсь).
или всетаки найди User_Name (параметр неизменен для всех драйверов/коннектов DriverName/ConnectionName, если конечно каким дополнительным не пользуешся но это врядли)
сделай двойной клик на компоненте, после пробегись по коннектам и посмотри параметры каждого...
> А нет у меня такого параметра.
значит и коннекта нет (когда смотриш?)
Description
Set ConnectionName to use a named connection configuration. Setting ConnectionName automaticallysets the DriverName and Paramsproperties to reflect the driver and connection parameters stored under that name in the dbxconnections.ini file.
LinOS (2003-07-09 10:04:00) [6]А если без параметров?
Как можно вытащить?
ЮЮ (2003-07-09 08:52:00) [7]Это из хелпа :-(
Значит посмотри какие параметры есть :-)
В ADO + MS SQL это был "User ID"
LinOS (2003-07-09 08:42:00) [8]А нет у меня такого параметра.
ЮЮ (2003-07-09 08:37:00) [9]TSQLConnection.Params.Values["User_Name"]