Which approach is best for client , First or second ? and Why ?
Assuming that somebody will have to maintain the code, because code changes with time, the app code is definitely more maintainable.
Will there be any performance difference between these 2 approaches ? How ?
It's not only about the processing capacity of a DB server VS app server. How scalable is a DB? DB tend to scale well vertically ($$$) but not so well horizontally. Software applications can be very powerful and scale well horizontally if designed properly.
This is a bit of a "depends" question. We tend to think that every project should be database centric and we start always designing an Entity Relational model as if every single problem had to be resolved with a relational database or as if the business logic should depend on the way the information is stored. It doesn't. If you follow DDD and a clean or hexagonal architecture, your business layer (domain) should be completely independent from the persistance layer (or any infrastructure layer). There are techniques to allow different models for write and read operations because Databases tend to be very good for write with consistency but not so good for read operations when the data is de-normalized and have to be joined to be consumed.
So, the answer is, it depends on your architecture and your approach. In my opinion a database is something to store information, not to build a solution for a business around it.
Which approach will be implemented faster ?
It depends on who is implementing it. For a complex business domain I doubt you can suffice using business logic in the database without hitting some wall.
Also, considering that the techniques for automated testing are waaay better for App code (c#, Java, Scala, Javascript, whatever, ..) you will probably develop faster and better code if you avoid using store procedures and have the business logic in the app layer (where it belongs)
Which approach is safer ?
Again, it depends. Are you exposing your DB in the network? Is the DB only accessible by a single application? How do users access data?
I have seen many companies bury thousands of dollars due to having legacy code in databases. I have seen companies where a specific E-R design is the main restriction for the new scenarios in a business, where they go down the road of micro-performance, adding indexes, views, cache, etc. just because it's too late (or expensive, they think) to modify the structure or because they think there is not a single E-R model that satisfies all the features a business needs, and this is true in most cases and the best reason not to architect business apps around a database.
I have seen companies where the database is used as an integration platform where every team touches something, where nothing gets deleted because people are scared of affecting somebody else, where a change by somebody affects many others due to a lack of versioning strategies, etc.
I have seen enough never to ever think of placing business logic in a database for many reasons. Databases are designed to store and query data and should be used only for that.