如何在 Winforms 中拆分文本框
How to split TextBox in Winforms
我正尝试为此查询数据库我使用了一个文本框,我必须在其中放置始终大于 1 的值,这就是 in 的原因,但我需要能够添加引号 '在每一行的开头和结尾也添加逗号,在每一行或者我怎么能这样做因为目前我只能在开头和结尾添加引号但是所有文本和逗号如果也在结尾
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('https://www.google.com','https://www.youtube.com')
在数据库中生成以下内容
contenido - sitios
multimedia - https://www.youtube.com
informacion - https://www.google.com
但是在app查询中没有引号'和逗号报错
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('https://www.google.comhttps://www.youtube.com')
error
这是我的代码
new SqlDataAdapter(new SqlCommand(@"
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('"+textBox1.Text+"')", conexion.conectado())).Fill(dataTable);
你能试试这个吗?
var urlList = textBox1.Text.Split(
new[] { "\r\n", "\r", "\n" },
StringSplitOptions.None);
string query = "SELECT TOP(500) FROM[Clientes].[dbo].[web] WHERE sitios in ({0})";
SqlCommand cmd = new SqlCommand(query, conexion.conectado());
int index = 0;
List<string> paramList = new List<string>();
foreach (var url in urlList)
{
if (!String.IsNullOrEmpty(url))
{
cmd.Parameters.AddWithValue("@param" + index, url);
paramList.Add("@param" + index);
index++;
}
}
cmd.CommandText = String.Format(query, String.Join(",", paramList));
cmd.CommandTimeout = 99999;
new SqlDataAdapter(cmd).Fill(dataTable);
此方法将解决您的问题并且比您的代码更安全。
我正尝试为此查询数据库我使用了一个文本框,我必须在其中放置始终大于 1 的值,这就是 in 的原因,但我需要能够添加引号 '在每一行的开头和结尾也添加逗号,在每一行或者我怎么能这样做因为目前我只能在开头和结尾添加引号但是所有文本和逗号如果也在结尾
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('https://www.google.com','https://www.youtube.com')
在数据库中生成以下内容
contenido - sitios
multimedia - https://www.youtube.com
informacion - https://www.google.com
但是在app查询中没有引号'和逗号报错
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('https://www.google.comhttps://www.youtube.com')
error
这是我的代码
new SqlDataAdapter(new SqlCommand(@"
SELECT TOP(500) [contenido]
FROM[Clientes].[dbo].[web]
where sitios in ('"+textBox1.Text+"')", conexion.conectado())).Fill(dataTable);
你能试试这个吗?
var urlList = textBox1.Text.Split(
new[] { "\r\n", "\r", "\n" },
StringSplitOptions.None);
string query = "SELECT TOP(500) FROM[Clientes].[dbo].[web] WHERE sitios in ({0})";
SqlCommand cmd = new SqlCommand(query, conexion.conectado());
int index = 0;
List<string> paramList = new List<string>();
foreach (var url in urlList)
{
if (!String.IsNullOrEmpty(url))
{
cmd.Parameters.AddWithValue("@param" + index, url);
paramList.Add("@param" + index);
index++;
}
}
cmd.CommandText = String.Format(query, String.Join(",", paramList));
cmd.CommandTimeout = 99999;
new SqlDataAdapter(cmd).Fill(dataTable);
此方法将解决您的问题并且比您的代码更安全。