Как вставить кликабельную ссылку в таблицу? - PullRequest
0 голосов
/ 18 октября 2019

Мне интересно, можно ли вставить кликабельную ссылку в таблицу. Я прекрасно понимаю, что в SSMS можно вставить ссылку, по которой можно будет нажимать, но это не то, чего я хочу достичь. Я хочу, чтобы ссылка была кликабельной в приложении. Я искал в Интернете, но мне попадаются только статьи о добавлении тегов HTML в оператор INSERT, который позволяет открыть ссылку в SSMS.

create table #link (a varchar(max))


INSERT into #link  
VALUES ('<a href="http://www.google.com/">Y</a>'
)

1 Ответ

3 голосов
/ 18 октября 2019

Вы можете вставить что угодно в столбцы базы данных. Но действие " Открыть эту ссылку в событии клика! " - это то, что ваше приложение должно сделать.

Чтобы подвести это еще ближе: действие "Возьми эту строку, нарисуйпросто текст на экране, пусть он будет выглядеть как гиперссылка и перейдет по скрытому URL-адресу одним кликом! " - это нечто, связанное с движком HTML. Передайте HTML любому браузеру, и браузер сделает все это неявно. Но ваша база данных - это просто контейнер для данных ...

Я бы либо использовал XML с типом столбца и воспринимал HTML как XHTML, либо - это было бы много! лучше - использовать два столбца и создать ссылку либо в запросе, либо - еще лучше - в вашем приложении.

Предположим, что таблица выглядит так:

DECLARE @TheLinkTable TABLE(ID INT IDENTITY,LinkText NVARCHAR(1000),LinkAddress NVARCHAR(1000));
INSERT INTO @TheLinkTable VALUES('Y','http://www.google.com/');

Вы можете использовать запрос, подобный этому

SELECT LinkAddress AS [a/@href]
      ,LinkText AS [a]
FROM @TheLinkTable
FOR XML PATH('');

И вы можете прочитать в этот ответ , если вам действительно понадобится HTML-таблица.

Но - как сказано выше - я бы просточитать оба значения из отдельных столбцов и создавать кликабельную ссылку в приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...