SQL Server 通过 sp 或函数将文本从英语转换为其他语言

2024-01-11

我在 sql server 中有一个表,它存储一些英文文本(在 nvarchar 列中)。

我必须创建一个存储过程,将一种语言(印地语、古吉拉特语、阿拉伯语)作为参数传递给该过程,它将返回从英语转换为该语言的数据。

我知道最好的方法是将这些语言的数据存储在不同的列中,但我不能这样做并且想要依赖 sql server。

是否有一些实用程序或功能可以帮助我完成此任务。

寻找初学者或想法..


Sql-Server 无法从一种语言翻译成另一种语言,但您可以使用外部工具来实现这一点,请查看https://blogs.msdn.microsoft.com/samlester/2013/05/04/language-translation-in-sql-server-using-bing-translator-apis-sql-clr/ https://blogs.msdn.microsoft.com/samlester/2013/05/04/language-translation-in-sql-server-using-bing-translator-apis-sql-clr/

或者您可以为谷歌翻译创建一个包装器:http://www.sqlservercentral.com/Forums/Topic819515-386-1.aspx http://www.sqlservercentral.com/Forums/Topic819515-386-1.aspx

using System;
using System.Net;
using System.Text;
using System.Text.RegularExpressions;

public static class Translator {
 /// <summary>
 /// Translates the text.
 /// </summary>
 /// <param name="input">The input.</param>
 /// <param name="languagePair">The language pair.</param>
 /// <returns></returns>
 public static void Main(string[] args) 
 {
  TranslateText(args[1], args[2]);
 }

 /// <summary>
 /// Translate Text using Google Translate
 /// </summary>
 /// <param name="input">The string you want translated</param>
 /// <param name="languagePair">2 letter Language Pair, delimited by "|". 
 /// e.g. "en|da" language pair means to translate from English to Danish</param>
 /// <param name="encoding">The encoding.</param>
 /// <returns>Translated to String</returns>
 public static string TranslateText(string input, string languagePair) 
 {
  string url = String.Format("http://www.google.com/translate_t?hl=en&ie=UTF8&text={0}&langpair={1}", input, languagePair);

  string result = String.Empty;

  using(WebClient webClient = new WebClient()) 
  {
   webClient.Encoding = System.Text.Encoding.UTF7;
   result = webClient.DownloadString(url);
  }

  Match m = Regex.Match(result, "(?<=<div id=result_box dir=\"ltr\">)(.*?)(?=</div>)");
  if (m.Success) result = m.Value;

  return result;
 }
}

但要小心,如果你每分钟向他们的服务器发出太多请求,谷歌会立即阻止你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL Server 通过 sp 或函数将文本从英语转换为其他语言 的相关文章

随机推荐