【发布时间】:2012-11-14 08:33:36
【问题描述】:
考虑一下 C# 中的这段代码:
var command = connection.CreateCommand();
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "usp_my_procedure";
当我执行这个命令时,SQL Server(或MySQL 服务器)知道我想在哪个数据库中运行这个存储过程?
这里最好的约定是什么(同时考虑性能和安全性)?我应该...
- 明确指定数据库名称?
- 每次创建连接后使用USE 命令设置默认数据库?
- 假设当前数据库已经被连接设置了? (例如
Database=mydb) - 其他?
另外,在 SQL Server 中,我认为最好明确指定数据库所有者:
command.CommandText = "dbo.usp_my_procedure";
【问题讨论】:
标签: c# mysql sql-server