Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Вниз

Description MS SQL -> Delphi DBGRID   Найти похожие ветки 

 
bolt   (2007-01-04 13:11) [0]

Всем ПРИВЕТ!!
На днях сталкнулся с такой проблемкой, может кто что посоветует:
MS SQL + ADO
При создании таблицы в MS SQL у каждого поля есть такая вещь как Description, интересно МОЖНО ЛИ в DBGrid в имя заголовка столбца грузить етот самый Description из MS SQL?
Всем СПАСИБО и ДОСТОЙНОЙ ПРИБЫЛИ в НОВОМ ГОДУ!


 
Johnmen ©   (2007-01-04 13:21) [1]

DBGrid.Columns[x].Title:=етот самый Description из MS SQL


 
bolt   (2007-01-04 13:27) [2]

: ))
Наверное я немного не правильно задал вопрос!
DBGrid.Columns[x].Title:= это понятно, вопрос в том что должно стоять после =, то есть как из Delphi обратиться к Description  поля id, таблицы Base, вот в чем ВОПРОС?


 
Johnmen ©   (2007-01-04 14:47) [3]

http://sql.ru/forum/actualthread.aspx?bid=1&tid=365397


 
bolt   (2007-01-04 15:01) [4]

Спасибо!


 
CoolLamer   (2007-01-07 14:48) [5]

SELECT objname, [value] as description
FROM ::::fn_listextendedproperty (NULL, "user", "dbo", "table", "ЗДЕСЬ ИМЯ ТАБЛИЦЫ", "column", NULL)


 
MsGuns ©   (2007-01-07 18:26) [6]

type

 // Дескриптор SQL-сервера
 PMSSQLServerDef = ^RMSSQLServerDef;
 RMSSQLServerDef = record
   ServerName: string;          // Имя сервера
   InstanceName: string;        // Установочный ид-р сервера
   IsClustered: boolean;        // Флаг включения в серверный кластер
   Version: RSQLServerVersion;  // Версия сервера
   Port: integer;               // Коммуникационный порт
   Path: string;                // Путь к серверу в сети
 end;

 // Дескриптор SQL колонки (поля)
 PSQLFieldDef = ^RSQLFieldDef;
 RSQLFieldDef = record
   FldName: string;
   PKey: boolean;
   AInc: boolean;
   IsNULL: boolean;
   FldType: string;
   FType: TFieldType;
   Length: word;
   Scale: byte;
   Description: string;
 end;

// Определение списка полей таблицы базы данных сервера MS SQL Server
function SQLServ_GetTableFieldsList(SQLServer: PMSSQLServerDef; DataBase,TableName: string; ListFields: TList): boolean;
var
 i: integer;
 fd: PSQLFieldDef;

begin
 result := false;
 for i := 0 to ListFields.Count-1 do Dispose(PSQLFieldDef(ListFields[i]));
 ListFields.Clear;
 with TADODataSet.Create(nil) do
   try
    ConnectionString := "Provider=SQLOLEDB;"+
                       ";Persist Security Info=false"+
                       ";User ID=sa"+
                       ";Data Source="+SQLServer.ServerName;
    CommandText := "use "+DataBase+" Exec sp_columns "+TableName;
    Open;
    while not EOF do
      begin
       fd := NEW(PSQLFieldDef);
       fd.FldName := FieldByName("COLUMN_NAME").AsString;
       fd.PKey := false;
       fd.FldType := FieldByName("TYPE_NAME").AsString;
       fd.AInc := (Pos("IDENTITY",UpperCase(fd.FldType))>0);
       fd.IsNULL := (FieldByName("IS_NULLABLE").AsString="YES");
       fd.Length := StrToInt(FieldByName("LENGTH").AsString);
       fd.Scale := 0;
       if UpperCase(fd.FldType)="NUMERIC" then
          fd.Scale := StrToInt(FieldByName("SCALE").AsString);
       fd.Description := "No Description";
       ListFields.Add(fd);
       Next;
      end;
    Close;
    // Извлечение описателей
    CommandText := "use "+DataBase+" select sc.name, sp.value "+
                   "from sysobjects so, syscolumns sc, sysproperties sp "+
                   "where so.id=sc.id and so.id=sp.id and "+
                   "sp.smallid=sc.colorder and so.name="+QuotedStr(TableName);
    Open;
    for i := 0 to ListFields.Count-1 do
      if Locate(Fields[0].FieldName,PSQLFieldDef(ListFields[i]).FldName,[]) then
         PSQLFieldDef(ListFields[i]).Description := Fields[1].AsString;
    Close;
    result := true;
   finally
    Free;
   end;
end;



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.041 c
1-1170404286
Error404
2007-02-02 11:18
2007.03.25
Проверить заполнение компонентов


15-1172719059
Slider007
2007-03-01 06:17
2007.03.25
С днем рождения ! 29 февраля


15-1172575857
Bless
2007-02-27 14:30
2007.03.25
Получить пароль от ICQ


2-1172954302
dreamse
2007-03-03 23:38
2007.03.25
Системные сервисы


2-1172826729
wrapper
2007-03-02 12:12
2007.03.25
Почтовик по умолчанию





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский