Data security in the cloud is a big concern that blocks the widespread use of the cloud for relational data management. First, to ensure data security, data conﬁdentiality needs to be provided when data resides in storage as well as when data is dynamically accessed by queries. Prior works on query processing on encrypted data did not provide data conﬁdentiality guarantees in both aspects. Tradeoff between secrecy and efﬁciency needs to be made when satisfying both aspects of data conﬁdentiality while being suitable for practical use. Second, to support common relational data management functions, various types of queries such as exact queries, range queries, data updates, insertion and deletion should be supported. To address these issues, this paper proposes a comprehensive framework for secure and efﬁcient query processing of relational data in the cloud. Our framework ensures data conﬁdentiality using a salted IDA encoding scheme and column-access-via-proxy query processing primitives, and ensures query efﬁciency using matrix column accesses and a secure B+-tree index. In addition, our framework provides data availability and integrity. We establish the security of our proposal by a detailed security analysis and demonstrate the query efﬁciency of our proposal through an experimental evaluation.