创建表 stmt:
CREATETEMPTEMPORARYTABLEIFNOTEXISTSschema-name.table-name(column-deftable-constraint,)table-options,ASselect-stmt列定义:
column-nametype-namecolumn-constraint列约束:
CONSTRAINTnamePRIMARYKEYDESCconflict-clauseAUTOINCREMENTASCNOTNULLconflict-clauseUNIQUEconflict-clauseCHECK(expr)DEFAULT(expr)literal-valuesigned-numberCOLLATEcollation-nameforeign-key-clauseGENERATEDALWAYSAS(expr)VIRTUALSTORED冲突条款:
ONCONFLICTROLLBACKABORTFAILIGNOREREPLACE表达式:
literal-valuebind-parameterschema-name.table-name.column-nameunary-operatorexprexprbinary-operatorexprfunction-name(DISTINCTexpr)filter-clauseover-clause,*(expr),CAST(exprAStype-name)exprCOLLATEcollation-nameexprNOTLIKEGLOBREGEXPMATCHexprexprESCAPEexprexprISNULLNOTNULLNOTNULLexprISNOTDISTINCTFROMexprexprNOTBETWEENexprANDexprexprNOTIN(select-stmt)expr,schema-name.table-function(expr)table-name,NOTEXISTS(select-stmt)CASEexprWHENexprTHENexprELSEexprENDraise-function过滤器子句:
FILTER(WHEREexpr)过度条款:
OVERwindow-name(base-window-namePARTITIONBYexpr,ORDERBYordering-term,frame-spec)框架规格:
GROUPSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWINGRANGEROWSUNBOUNDEDPRECEDINGexprPRECEDINGCURRENTROWexprPRECEDINGCURRENTROWexprFOLLOWINGexprPRECEDINGCURRENTROWexprFOLLOWINGEXCLUDECURRENTROWEXCLUDEGROUPEXCLUDETIESEXCLUDENOOTHERS订购条款:
exprCOLLATEcollation-nameDESCASCNULLSFIRSTNULLSLAST提升功能:
RAISE(ROLLBACK,error-message)IGNOREABORTFAIL外键子句:
REFERENCESforeign-table(column-name),ONDELETESETNULLUPDATESETDEFAULTCASCADERESTRICTNOACTIONMATCHnameNOTDEFERRABLEINITIALLYDEFERREDINITIALLYIMMEDIATE字面值:
CURRENT_TIMESTAMPnumeric-literalstring-literalblob-literalNULLTRUEFALSECURRENT_TIMECURRENT_DATE签名号码:
+numeric-literal-类型名称:
name(signed-number,signed-number)(signed-number)签名号码:
+numeric-literal-选择stmt:
WITHRECURSIVEcommon-table-expression,SELECTDISTINCTresult-column,ALLFROMtable-or-subqueryjoin-clause,WHEREexprGROUPBYexprHAVINGexpr,WINDOWwindow-nameASwindow-defn,VALUES(expr),,compound-operatorselect-coreORDERBYLIMITexprordering-term,OFFSETexpr,expr公用表表达式:
table-name(column-name)ASNOTMATERIALIZED(select-stmt),复合运算符:
UNIONUNIONINTERSECTEXCEPTALL表达式:
literal-valuebind-parameterschema-name.table-name.column-nameunary-operatorexprexprbinary-operatorexprfunction-name(DISTINCTexpr)filter-clauseover-clause,*(expr),CAST(exprAStype-name)exprCOLLATEcollation-nameexprNOTLIKEGLOBREGEXPMATCHexprexprESCAPEexprexprISNULLNOTNULLNOTNULLexprISNOTDISTINCTFROMexprexprNOTBETWEENexprANDexprexprNOTIN(select-stmt)expr,schema-name.table-function(expr)table-name,NOTEXISTS(select-stmt)CASEexprWHENexprTHENexprELSEexprENDraise-function过滤器子句:
FILTER(WHEREexpr)字面值:
CURRENT_TIMESTAMPnumeric-literalstring-literalblob-literalNULLTRUEFALSECURRENT_TIMECURRENT_DATE过度条款:
OVERwindow-name(base-window-namePARTITIONBYexpr,ORDERBYordering-term,frame-spec)框架规格:
GROUPSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWINGRANGEROWSUNBOUNDEDPRECEDINGexprPRECEDINGCURRENTROWexprPRECEDINGCURRENTROWexprFOLLOWINGexprPRECEDINGCURRENTROWexprFOLLOWINGEXCLUDECURRENTROWEXCLUDEGROUPEXCLUDETIESEXCLUDENOOTHERS提升功能:
RAISE(ROLLBACK,error-message)IGNOREABORTFAIL类型名称:
name(signed-number,signed-number)(signed-number)签名号码:
+numeric-literal-加入子句:
table-or-subqueryjoin-operatortable-or-subqueryjoin-constraint加入约束:
USING(column-name),ONexprjoin-operator:
NATURALLEFTOUTERJOIN,RIGHTFULLINNERCROSSordering-term:
exprCOLLATEcollation-nameDESCASCNULLSFIRSTNULLSLASTresult-column:
exprAScolumn-alias*table-name.*table-or-subquery:
schema-name.table-nameAStable-aliasINDEXEDBYindex-nameNOTINDEXEDtable-function-name(expr),AStable-alias(select-stmt)(table-or-subquery),join-clausewindow-defn:
(base-window-namePARTITIONBYexpr,ORDERBYordering-term,frame-spec)frame-spec:
GROUPSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWINGRANGEROWSUNBOUNDEDPRECEDINGexprPRECEDINGCURRENTROWexprPRECEDINGCURRENTROWexprFOLLOWINGexprPRECEDINGCURRENTROWexprFOLLOWINGEXCLUDECURRENTROWEXCLUDEGROUPEXCLUDETIESEXCLUDENOOTHERS表约束:
CONSTRAINTnamePRIMARYKEY(indexed-column)conflict-clause,UNIQUECHECK(expr)FOREIGNKEY(column-name)foreign-key-clause,conflict-clause:
ONCONFLICTROLLBACKABORTFAILIGNOREREPLACEexpr:
literal-valuebind-parameterschema-name.table-name.column-nameunary-operatorexprexprbinary-operatorexprfunction-name(DISTINCTexpr)filter-clauseover-clause,*(expr),CAST(exprAStype-name)exprCOLLATEcollation-nameexprNOTLIKEGLOBREGEXPMATCHexprexprESCAPEexprexprISNULLNOTNULLNOTNULLexprISNOTDISTINCTFROMexprexprNOTBETWEENexprANDexprexprNOTIN(select-stmt)expr,schema-name.table-function(expr)table-name,NOTEXISTS(select-stmt)CASEexprWHENexprTHENexprELSEexprENDraise-functionfilter-clause:
FILTER(WHEREexpr)literal-value:
CURRENT_TIMESTAMPnumeric-literalstring-literalblob-literalNULLTRUEFALSECURRENT_TIMECURRENT_DATEover-clause:
OVERwindow-name(base-window-namePARTITIONBYexpr,ORDERBYordering-term,frame-spec)frame-spec:
GROUPSBETWEENUNBOUNDEDPRECEDINGANDUNBOUNDEDFOLLOWINGRANGEROWSUNBOUNDEDPRECEDINGexprPRECEDINGCURRENTROWexprPRECEDINGCURRENTROWexprFOLLOWINGexprPRECEDINGCURRENTROWexprFOLLOWINGEXCLUDECURRENTROWEXCLUDEGROUPEXCLUDETIESEXCLUDENOOTHERSordering-term:
exprCOLLATEcollation-nameDESCASCNULLSFIRSTNULLSLASTraise-function:
RAISE(ROLLBACK,error-message)IGNOREABORTFAILtype-name:
name(signed-number,signed-number)(signed-number)signed-number:
+numeric-literal-foreign-key-clause:
REFERENCESforeign-table(column-name),ONDELETESETNULLUPDATESETDEFAULTCASCADERESTRICTNOACTIONMATCHnameNOTDEFERRABLEINITIALLYDEFERREDINITIALLYIMMEDIATEindexed-column:
column-nameCOLLATEcollation-nameDESCexprASC表选项:
WITHOUTROWIDSTRICT,2.创建表命令“CREATE TABLE”命令用于在 SQLite 数据库中创建一个新表。CREATE TABLE 命令指定新表的以下属性:
新表的名称。
在其中创建新表的数据库。可以在主数据库、临时数据库或任何附加数据库中创建表。
表中每一列的名称。
表中每一列的