қ қ ұ ғ.
ұ ғ ұ ұ . қ (relation) .
ғ ө ұ . Ә ө ә ү, NULL () ә. ғ ү. қ ү ғң қғ ә ң .
Ә ғң өң ә ү .
DB-API 2
қғ ғғ ұғ : DB (Database, қ) ә API (Application Program Interface, қ ғ ).
, DB-API қ қ ғ қ. ө ғ ұ , қ Python ғ ү қ ң ү . ңғ API (қ ә ң ұқ) қғ ә қ () ү , қ ғ ғ ғ ә ә ғ , Қ қ ө ө ң.
DB-API 2.0 PEP 249- ә ( http://www.python.org/peps/pep-0249.html/), ә ө ә ә ғ .
DB API 2.0
DB API 2.0 қ ұ ү ң , қ -ң ә, ғғ өң ң ң-, ү ә ң ү әү , қ ү ә ү ұ қ. Қ ң Python ң қ ө қ қ. (http://www.python.org/topics/database/ қ -қ қ ө ).
ұ , DB-API 2.0 қғ ү ұ .
қ қ қ ү (connection object). ң ү DB-API ү connect() қ . :
|
|
dsn ү өң
user Қ
password ө
host Қ ұ
database қң .
ң ә қ.
ң ұ ұқ қ:
apilevel. DB-API ұқ ("1.0" "2.0").
threadsafety. қ қ ү , ү ұқ:
0 ғ қ.
1 ғ қ , қ .
2 ғ ә қ .
3 ғ , ә қ (ұғ қ ң қ ғ қ ү).
paramstyle. ғ қ ү. ұ ұқң ә ү:
"format" ANSI C (, "%s", "%i") .
"pyformat" Python ң қ ("%(item)s")
"qmark" ң ү.
"numeric" ө қ (":1").
"named" қ (":name").
ғ қғ ү ғ қ қ : Warning (), Error (қ), InterfaceError ( қ), DatabaseError ( қ , қ). қ ңғ ғң : DataError ( өңң қ), OperationalError (ұғ қ қ ң ү), IntegrityError (ұ қң қ), InternalError ( қң қ), ProgrammingError (ғқ қ, , SQL-ұң қ), NotSupportedError (ұғ қ қ ғ ғ).
connect() қ ә ғ, ң ә :
close() қ .
commit() қ.
rollback() ғ (қ ү қ ). қғ ү .
cursor() қ - қ. қ қ, ү .
|
|
қ ө ө ү. қғ қ ө ә, ө қң ұғң ұ . , қ қ, ң ә ң ө, . commit() ә rollback() ә қ ү ң ә ң . қ, қң қ ү қ.
, DB-API 2.0 ү қ, -, ң ұң қ, қ қ. ө, ғ , - ғ . ә - - ә қ, қғ .
-
(ғ cursor - CURrrent Set Of Records, ғғ ғ) ұң ә ұ ү қ . ұң ә ә -ө ә - ұ . Қ ғ ә - қ ә өң , қ ғғ ә ә қ. қ қ SQL-ұқғң қ.
-ң DB-API қғ:
arraysize. ң, fetchmany() ә қ . Ү 1- ң.
callproc(procname[, params]). params ө procname қғ қ. қғ ң ә ө . Ә, қ fetch ә , ә қ .
close(). - ..
description. ұ қ ү ғ қ , , . Ә әң қ қ:
(name, type_code, display_size, internal_size, precision, scale, null_ok). ( ә ү), қғң (ғ ү ғ ө, ө, ә, , әң ү) None ә ү.
execute(operation[, parameters]). қ Қ ұ . (parameters), ғ ғ paramstyle ә, қ қ ұ ү.
executemany(operation, seq_of_parameters). ғ қ ұ . seq_of_parameters ғң .
fetchall(). ұ әң қ қ ( қ қғ).
fetchmany([size]). ҳң ү ұ әң ө қ. әң қғ . size қ ң ө (қ қ ү). Ү size -ң arraysize ң.
|
|
fetchone(). ұ ә None әң қғ қ ( ү).
nextset(). ұ ә ғ, ә ғң . қ қ , None қ. қң ғ ә ғ қ қ.
Rowcount. ңғ ұ ә, ғ қғғ . execute-ұң қғ ғ ө 1- ң.
setinputsizes(sizes). қғ ү, қ. Ә ә , sizes . , ұғ -ү ү ғ ә, ү. ә None ә ү, ң ө , ө ү қ , ң ғ . Ә execute-ә қ қ .
setoutputsize(size[, column]). column ө ғ, ғ ү ө . column , қ ү ғ ү ә ө . , ү қ (Binary Large Object, BLOB) ү қ ү.
-ү
DB-API 2.0 -ү ү қ, қң ө ү қғ:
ү | |
STRING | ә |
BINARY | |
NUMBER | |
DATETIME | ү ә қ |
ROWID | |
None | NULL-ә (қ ә) |
Ә ү ( ә ұ - ) қ. DB-API ү қ :
Date (, ,ү) ү.
Time (ғ, , ) қ.
Timestamp (, , ү, ғ, ,) ү-қ.
DateFromTicks(secs) Ғ (1 қң 1970 ) secs ү ү.
TimeFromTicks(secs) ә қ.
TimestampFromTicks(secs) ә ү қ.
Binary(string) string үқ .