sql: introduce function default values
This patch replaces the SQL mechanism for setting expression default values with the BOX mechanism. Closes #8793 @TarantoolBot document Title: field default value in SQL SQL now uses the default mechanism for BOX fields. The main difference visible to the user is that now all NULL values explicitly inserted into a field with a default value will be replaced with a default value, which is different from the original SQL behavior. Additionally, default values are now inserted instead of NULL after the SQL BEFORE INSERT trigger but before the BOX BEFORE INSERT trigger. Previously, SQL default values were inserted before the SQL BEFORE INSERT trigger.
Showing
- changelogs/unreleased/gh-8793-rework-sql-defaults.md 2 additions, 0 deletionschangelogs/unreleased/gh-8793-rework-sql-defaults.md
- src/box/sql.c 14 additions, 0 deletionssrc/box/sql.c
- src/box/sql/build.c 46 additions, 39 deletionssrc/box/sql/build.c
- src/box/sql/parse.y 1 addition, 1 deletionsrc/box/sql/parse.y
- src/box/sql/prepare.c 1 addition, 0 deletionssrc/box/sql/prepare.c
- src/box/sql/sqlInt.h 16 additions, 1 deletionsrc/box/sql/sqlInt.h
- src/box/sql/tarantoolInt.h 4 additions, 0 deletionssrc/box/sql/tarantoolInt.h
- src/box/sql/vdbe.c 15 additions, 0 deletionssrc/box/sql/vdbe.c
- test/sql-luatest/defaults_test.lua 18 additions, 0 deletionstest/sql-luatest/defaults_test.lua
- test/sql-tap/func.test.lua 1 addition, 4 deletionstest/sql-tap/func.test.lua
- test/sql-tap/func5.test.lua 2 additions, 6 deletionstest/sql-tap/func5.test.lua
- test/sql-tap/uuid.test.lua 1 addition, 1 deletiontest/sql-tap/uuid.test.lua
Loading
Please register or sign in to comment