Мой способ - отправить значение из текстового поля в хранимую процедуру SQL, разделить текст, а затем вставить отдельные строки.
Все это будет на основе множеств, поэтому очень быстро.
если вы разделите его в VB.NET и отправите отдельные операторы INSERT в SQL, что будет намного медленнее.
Вы можете преобразовать данные с разделителями в текстовом поле в XML и отправить их в SQL, а также использовать их в качестве основы для операторов INSERT. Но лично я думаю, что разделение на SQL предпочтительнее.
Я найду для вас ссылку
Я не нашел работающий пример легко, поэтому вот предложение
INSERT INTO UsedTags
(
Tag
)
SELECT SplitValue
FROM dbo.MySplitFunction(@ListOfTags)
См. http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=50648 для рекомендуемых функций SPLIT
Если вы хотите просто сделать INSERT напрямую из VB.NET, вы можете сделать что-то вроде:
INSERT INTO UsedTags
(
Tag
)
SELECT "Tag1"
UNION ALL
SELECT "Tag2"
т.е. вы генерируете составной оператор SELECT в VB.NET, разделив строку тега с разделителями.
(Если могут быть дубликаты тегов и вы хотите удалить дубликаты, используйте «UNION» вместо «UNION ALL»)