mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-15 23:54:19 +00:00
Markdown code blocks part 6 (#20292)
This commit is contained in:
committed by
ringabout
parent
730580382c
commit
03a0fda1bd
@@ -19,10 +19,9 @@
|
||||
## All `db_*` modules support the same form of parameter substitution.
|
||||
## That is, using the `?` (question mark) to signify the place where a
|
||||
## value should be placed. For example:
|
||||
##
|
||||
## .. code-block:: Nim
|
||||
## sql"INSERT INTO myTable (colA, colB, colC) VALUES (?, ?, ?)"
|
||||
##
|
||||
## ```
|
||||
## sql"INSERT INTO myTable (colA, colB, colC) VALUES (?, ?, ?)"
|
||||
## ```
|
||||
##
|
||||
## Examples
|
||||
## ========
|
||||
@@ -30,57 +29,60 @@
|
||||
## Opening a connection to a database
|
||||
## ----------------------------------
|
||||
##
|
||||
## .. code-block:: Nim
|
||||
## import std/db_mysql
|
||||
## let db = open("localhost", "user", "password", "dbname")
|
||||
## db.close()
|
||||
## ```
|
||||
## import std/db_mysql
|
||||
## let db = open("localhost", "user", "password", "dbname")
|
||||
## db.close()
|
||||
## ```
|
||||
##
|
||||
## Creating a table
|
||||
## ----------------
|
||||
##
|
||||
## .. code-block:: Nim
|
||||
## db.exec(sql"DROP TABLE IF EXISTS myTable")
|
||||
## db.exec(sql("""CREATE TABLE myTable (
|
||||
## id integer,
|
||||
## name varchar(50) not null)"""))
|
||||
## ```
|
||||
## db.exec(sql"DROP TABLE IF EXISTS myTable")
|
||||
## db.exec(sql("""CREATE TABLE myTable (
|
||||
## id integer,
|
||||
## name varchar(50) not null)"""))
|
||||
## ```
|
||||
##
|
||||
## Inserting data
|
||||
## --------------
|
||||
##
|
||||
## .. code-block:: Nim
|
||||
## db.exec(sql"INSERT INTO myTable (id, name) VALUES (0, ?)",
|
||||
## "Dominik")
|
||||
## ```
|
||||
## db.exec(sql"INSERT INTO myTable (id, name) VALUES (0, ?)",
|
||||
## "Dominik")
|
||||
## ```
|
||||
##
|
||||
## Larger example
|
||||
## --------------
|
||||
##
|
||||
## .. code-block:: Nim
|
||||
## ```
|
||||
## import std/[db_mysql, math]
|
||||
##
|
||||
## import std/[db_mysql, math]
|
||||
## let theDb = open("localhost", "nim", "nim", "test")
|
||||
##
|
||||
## let theDb = open("localhost", "nim", "nim", "test")
|
||||
## theDb.exec(sql"Drop table if exists myTestTbl")
|
||||
## theDb.exec(sql("create table myTestTbl (" &
|
||||
## " Id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, " &
|
||||
## " Name VARCHAR(50) NOT NULL, " &
|
||||
## " i INT(11), " &
|
||||
## " f DECIMAL(18,10))"))
|
||||
##
|
||||
## theDb.exec(sql"Drop table if exists myTestTbl")
|
||||
## theDb.exec(sql("create table myTestTbl (" &
|
||||
## " Id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, " &
|
||||
## " Name VARCHAR(50) NOT NULL, " &
|
||||
## " i INT(11), " &
|
||||
## " f DECIMAL(18,10))"))
|
||||
## theDb.exec(sql"START TRANSACTION")
|
||||
## for i in 1..1000:
|
||||
## theDb.exec(sql"INSERT INTO myTestTbl (name,i,f) VALUES (?,?,?)",
|
||||
## "Item#" & $i, i, sqrt(i.float))
|
||||
## theDb.exec(sql"COMMIT")
|
||||
##
|
||||
## theDb.exec(sql"START TRANSACTION")
|
||||
## for i in 1..1000:
|
||||
## theDb.exec(sql"INSERT INTO myTestTbl (name,i,f) VALUES (?,?,?)",
|
||||
## "Item#" & $i, i, sqrt(i.float))
|
||||
## theDb.exec(sql"COMMIT")
|
||||
## for x in theDb.fastRows(sql"select * from myTestTbl"):
|
||||
## echo x
|
||||
##
|
||||
## for x in theDb.fastRows(sql"select * from myTestTbl"):
|
||||
## echo x
|
||||
## let id = theDb.tryInsertId(sql"INSERT INTO myTestTbl (name,i,f) VALUES (?,?,?)",
|
||||
## "Item#1001", 1001, sqrt(1001.0))
|
||||
## echo "Inserted item: ", theDb.getValue(sql"SELECT name FROM myTestTbl WHERE id=?", id)
|
||||
##
|
||||
## let id = theDb.tryInsertId(sql"INSERT INTO myTestTbl (name,i,f) VALUES (?,?,?)",
|
||||
## "Item#1001", 1001, sqrt(1001.0))
|
||||
## echo "Inserted item: ", theDb.getValue(sql"SELECT name FROM myTestTbl WHERE id=?", id)
|
||||
##
|
||||
## theDb.close()
|
||||
## theDb.close()
|
||||
## ```
|
||||
|
||||
|
||||
import strutils, mysql
|
||||
|
||||
Reference in New Issue
Block a user