MyTetra Share
Делитесь знаниями!
Как получить список имен полей таблицы в MS Access
Время создания: 24.04.2019 15:06
Текстовые метки: sql server, column_name
Раздел: Разные закладки - Microsoft SQL Server
Запись: xintrea/mytetra_db_adgaver_new/master/base/1556107612nui0e72gvs/text.html на raw.githubusercontent.com

Вариант функции, возвращающей список имен полей таблицы в MS Access:



Public Sub Test()

Dim rs As ADODB.Recordset

Set rs = CurrentProject.Connection.OpenSchema(adSchemaColumns, Array(Empty, Empty, "tbBases"))

With rs

Do While Not .EOF

Debug.Print !COLUMN_NAME, !Data_Type

.MoveNext

Loop

End With

End Sub


'\\======================================================

https://www.sql.ru/forum/22574/kak-poluchit-spisok-imen-poley-tablicy-v-ms-access

Sub my_sub()

Dim table_name As String: table_name = "ListIncident"

Dim column_names As Collection

Set column_names = ColumnList(table_name)

End Sub




Function ColumnList(ByVal table_name As String)

Dim column_names As New Collection

Dim Q As Integer

For Q = 0 To CurrentDb.TableDefs(table_name).Fields.Count - 1

column_names.Add CurrentDb.TableDefs(table_name).Fields(Q).Name

Next

Set ColumnList = column_names

End Function




--\\=================================================================

COLUMN_NAME(список имен полей таблицы)




Получение полей таблицы в MSSQL - TSQL


Этот запрос возвращает набор полей таблицы со всеми характеристиками. Метод также применим и замечательно работает с представлениями VIEW.


SELECT

   ORDINAL_POSITION

  ,COLUMN_NAME

  ,DATA_TYPE

  ,CHARACTER_MAXIMUM_LENGTH

  ,IS_NULLABLE

  ,COLUMN_DEFAULT

FROM  

  INFORMATION_SCHEMA.COLUMNS

WHERE  

  TABLE_NAME = 'Название таблицы'

ORDER BY

  ORDINAL_POSITION ASC;


А вот так можно узнать права пользователя.


sp_HelpUser имя_пользователя


--\\=================================================================

Sub GetFields()

http://forum.codenet.ru/q39997/

Dim con As ADODB.Connection

Dim adoxCat As New ADOX.Catalog

Dim adoxTable As ADOX.Table

Dim adoxTableColumns As ADOX.Columns

Dim i As Integer

Dim l As Integer

Set con = Application.CurrentProject.Connection

Set adoxCat.ActiveConnection = con

Set adoxTable = adoxCat.Tables("ListIncident")

Set adoxTableColumns = adoxTable.Columns

l = adoxTableColumns.Count

For i = 0 To l - 1

Debug.Print adoxTableColumns(i).Name

Next i

End Sub


Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования