| 2068 | |
| 2069 | |
| 2070 | class SQLiteDialect(default.DefaultDialect): |
| 2071 | name = "sqlite" |
| 2072 | supports_alter = False |
| 2073 | |
| 2074 | # SQlite supports "DEFAULT VALUES" but *does not* support |
| 2075 | # "VALUES (DEFAULT)" |
| 2076 | supports_default_values = True |
| 2077 | supports_default_metavalue = False |
| 2078 | |
| 2079 | # sqlite issue: |
| 2080 | # https://github.com/python/cpython/issues/93421 |
| 2081 | # note this parameter is no longer used by the ORM or default dialect |
| 2082 | # see #9414 |
| 2083 | supports_sane_rowcount_returning = False |
| 2084 | |
| 2085 | supports_empty_insert = False |
| 2086 | supports_cast = True |
| 2087 | supports_multivalues_insert = True |
| 2088 | use_insertmanyvalues = True |
| 2089 | tuple_in_values = True |
| 2090 | supports_statement_cache = True |
| 2091 | insert_null_pk_still_autoincrements = True |
| 2092 | insert_returning = True |
| 2093 | update_returning = True |
| 2094 | update_returning_multifrom = True |
| 2095 | delete_returning = True |
| 2096 | update_returning_multifrom = True |
| 2097 | |
| 2098 | supports_default_metavalue = True |
| 2099 | """dialect supports INSERT... VALUES (DEFAULT) syntax""" |
| 2100 | |
| 2101 | default_metavalue_token = "NULL" |
| 2102 | """for INSERT... VALUES (DEFAULT) syntax, the token to put in the |
| 2103 | parenthesis.""" |
| 2104 | |
| 2105 | default_paramstyle = "qmark" |
| 2106 | execution_ctx_cls = SQLiteExecutionContext |
| 2107 | statement_compiler = SQLiteCompiler |
| 2108 | ddl_compiler = SQLiteDDLCompiler |
| 2109 | type_compiler_cls = SQLiteTypeCompiler |
| 2110 | preparer = SQLiteIdentifierPreparer |
| 2111 | ischema_names = ischema_names |
| 2112 | colspecs = colspecs |
| 2113 | |
| 2114 | construct_arguments = [ |
| 2115 | ( |
| 2116 | sa_schema.Table, |
| 2117 | { |
| 2118 | "autoincrement": False, |
| 2119 | "with_rowid": True, |
| 2120 | "strict": False, |
| 2121 | }, |
| 2122 | ), |
| 2123 | (sa_schema.Index, {"where": None}), |
| 2124 | ( |
| 2125 | sa_schema.Column, |
| 2126 | { |
| 2127 | "on_conflict_primary_key": None, |