问题1:专门一个存储过程执行其他存储过程是否有问题?
问题2:大量使用逻辑没问题的事务是否影响效率?
问题3:如何避免使用like、in?
1.存储过程相互调用如果是必须的,则对效率没有影响
2.在不需要事务的时候最好别显式地打开事务,如不需要锁表的select操作自然最好别去锁
3.是否使用like和in完全取决于你的业务逻辑,该用的地方还是根用,当然like可以用全文索引替代以得到更好的效率
一个存储过程可以调用另一个,数据库的效率要看连接字符串的效率,不是看like 和in!
1. 没什么问题。
2. 不会影响,你不开的话SQL Server也会默认开一个。如果你是多次操作,显式打开一个事务有可能还会比不显式打开事务要快。
3. like, in 很好用,没有理由不用。对于短内容(姓名、文章标题、关键字等)的搜索like应该比全文检索要快,对于长内容(新闻、博客、论文等)就应该用全文检索。