當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Conn.QueryRow方法代碼示例

本文整理匯總了Golang中github.com/concourse/atc/db.Conn.QueryRow方法的典型用法代碼示例。如果您正苦於以下問題:Golang Conn.QueryRow方法的具體用法?Golang Conn.QueryRow怎麽用?Golang Conn.QueryRow使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/concourse/atc/db.Conn的用法示例。


在下文中一共展示了Conn.QueryRow方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1:

		Expect(err).To(MatchError("disaster"))
	})

	Describe("query counting", func() {
		It("increments the global (;_;) counter", func() {
			_, err := countingConn.Query("SELECT $1::int", 1)
			Expect(err).NotTo(HaveOccurred())

			Expect(metric.DatabaseQueries.Max()).To(Equal(1))

			_, err = countingConn.Exec("SELECT $1::int", 1)
			Expect(err).NotTo(HaveOccurred())

			Expect(metric.DatabaseQueries.Max()).To(Equal(2))

			countingConn.QueryRow("SELECT $1::int", 1)

			Expect(metric.DatabaseQueries.Max()).To(Equal(3))

			By("working in transactions")
			underlyingTx := &fakes.FakeTx{}
			underlyingConn.BeginReturns(underlyingTx, nil)

			tx, err := countingConn.Begin()
			Expect(err).NotTo(HaveOccurred())

			_, err = tx.Query("SELECT $1::int", 1)
			Expect(err).NotTo(HaveOccurred())

			Expect(metric.DatabaseQueries.Max()).To(Equal(4))
		})
開發者ID:pcfdev-forks,項目名稱:atc,代碼行數:31,代碼來源:query_counter_test.go

示例2:

				rows, err := explainConn.Query("SELECT $1::int", 1)
				Ω(err).ShouldNot(HaveOccurred())

				err = rows.Close()
				Ω(err).ShouldNot(HaveOccurred())

				Expect(logger).To(gbytes.Say("Result"))
				Expect(logger).To(gbytes.Say("cost="))
				Expect(logger).To(gbytes.Say("SELECT"))
			})
		})

		Describe("QueryRow()", func() {
			It("EXPLAINs the query", func() {
				var i int
				err := explainConn.QueryRow("SELECT $1::int", 1).Scan(&i)
				Ω(err).ShouldNot(HaveOccurred())

				Ω(underlyingConn.QueryRowCallCount()).Should(Equal(1))
				Ω(underlyingConn.QueryCallCount()).Should(Equal(1))

				query, args := underlyingConn.QueryRowArgsForCall(0)
				Ω(query).Should(Equal("SELECT $1::int"))
				Ω(args).Should(Equal(varargs(1)))

				query, args = underlyingConn.QueryArgsForCall(0)
				Ω(query).Should(Equal("EXPLAIN SELECT $1::int"))
				Ω(args).Should(Equal(varargs(1)))
			})

			It("logs the output of the explain", func() {
開發者ID:utako,項目名稱:atc,代碼行數:31,代碼來源:explain_db_test.go


注:本文中的github.com/concourse/atc/db.Conn.QueryRow方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。