相关疑难解决方法(0)

将SQL保存在存储过程与代码中的优缺点是什么

在您的C#源代码或存储过程中保留SQL有哪些优点/缺点?我一直在与一位朋友讨论我们正在开发的一个开源项目(C#ASP.NET论坛).目前,大多数数据库访问都是通过在C#中构建SQL内联并调用SQL Server DB来完成的.所以我试图确定哪个特定项目最好.

到目前为止,我有:

代码中的优点:

  • 易于维护 - 无需运行SQL脚本来更新查询
  • 更容易移植到另一个数据库 - 没有移动到端口

存储过程的优点:

  • 性能
  • 安全

c# sql sql-server stored-procedures

274
推荐指数
17
解决办法
7万
查看次数

列名sql错误无效

我试图将数据输入我的数据库,但它给我以下错误:

列名无效

这是我的代码

string connectionString = "Persist Security Info=False;User ID=sa;Password=123;Initial Catalog=AddressBook;Server=Bilal-PC";

using (SqlConnection connection = new SqlConnection(connectionString))
{
  SqlCommand cmd = new SqlCommand();

  cmd.CommandText = "INSERT INTO Data (Name,PhoneNo,Address) VALUES (" + txtName.Text + "," + txtPhone.Text + "," + txtAddress.Text + ");";
  cmd.CommandType = CommandType.Text;
  cmd.Connection = connection;

  connection.Open();
  cmd.ExecuteNonQuery();
}
Run Code Online (Sandbox Code Playgroud)

c# database sql-server

12
推荐指数
4
解决办法
17万
查看次数

在列中匹配逗号分隔值

如果我有一个名为"Categories" science,maths,english的列,如下所示,以逗号分隔的行显示,如何匹配包含类别的所有行maths

我尝试过一个简单的LIKE但是不太准确,因为搜索时可能会有'poo_science' '%science%'会匹配两者.

我查看了StackOverflow并且有很多类似的问题但是所有人似乎都希望将数据作为逗号分隔列表或其他东西返回 - 这不是我所追求的.

我不想使用存储过程,也不能使用全文搜索.我有一个我使用的存储过程,('$')在每个值周围添加了另一个字符,然后搜索'$value$'...这是太讨厌了吗?我采用了一种更简单的方法.

sql sql-server csv comma

3
推荐指数
2
解决办法
2万
查看次数

标签 统计

sql-server ×3

c# ×2

sql ×2

comma ×1

csv ×1

database ×1

stored-procedures ×1