-
-
Notifications
You must be signed in to change notification settings - Fork 141
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC]: full support unsigned data types[tinyint~int32] #1266
Labels
Milestone
Comments
This was referenced Feb 1, 2023
hustjieke
added a commit
to hustjieke/stonedb-8.0.30-upgrade
that referenced
this issue
Feb 13, 2023
[summary] 1. expand unsigned boundary from signed boundary to max valued. 2. code cover create/insert(delayed/no delayed mode)/update/delete/select. 3. functions and operators(agg and math calculation) refs: stoneatom#1266 related issue: stoneatom#1151
hustjieke
added a commit
to hustjieke/stonedb-8.0.30-upgrade
that referenced
this issue
Feb 21, 2023
[summary] 1. expand unsigned boundary from signed boundary to max valued. 2. code cover create/insert(delayed/no delayed mode)/update/delete/select. 3. functions and operators(agg and math calculation) refs: stoneatom#1266 related issue: stoneatom#1151
hustjieke
added a commit
to hustjieke/stonedb-8.0.30-upgrade
that referenced
this issue
Feb 24, 2023
[summary] 1. expand unsigned boundary from signed boundary to max valued. 2. code cover create/insert(delayed/no delayed mode)/update/delete/select. 3. functions and operators(agg and math calculation) refs: stoneatom#1266 related issue: stoneatom#1151
hustjieke
added a commit
to hustjieke/stonedb-8.0.30-upgrade
that referenced
this issue
Feb 27, 2023
[summary] 1. expand unsigned boundary from signed boundary to max valued. 2. code cover create/insert(delayed/no delayed mode)/update/delete/select. 3. functions and operators(agg and math calculation) refs: stoneatom#1266 related issue: stoneatom#1151
hustjieke
added a commit
to hustjieke/stonedb-8.0.30-upgrade
that referenced
this issue
Feb 28, 2023
[summary] 1. expand unsigned boundary from signed boundary to max valued. 2. code cover create/insert(delayed/no delayed mode)/update/delete/select. 3. functions and operators(agg and math calculation) refs: stoneatom#1266 related issue: stoneatom#1151
hustjieke
changed the title
[RFC]: full support unsigned data types
[RFC]: full support unsigned data types[tinyint~int32]
Mar 2, 2023
unsigned int64_t will be supported in the future, maybe after refactor data types module in tianmu engine. |
github-project-automation
bot
moved this from In Progress
to Done
in StoneDB for MySQL 5.7
Mar 7, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Summary
Currently
unsigned data type
in StoneDB is supported on syntax level, the max positive values are the same withsigned data type
, fromtinyint
tobigint
. The work was done in pr #1218 #1220.Working branch: https://github.com/stoneatom/stonedb/tree/feat_support_unsigned_data_types
In milestone v1.0.3, we'll fully support
unsigned data type
, just like MySQL does.Numeric Data Type Syntax(exluding float, double, decimal)
Numeric data types that permit the UNSIGNED attribute also permit SIGNED. However, these data types are signed by default, so the SIGNED attribute has no effect.
As of MySQL 8.0.17, the UNSIGNED attribute is deprecated for columns of type FLOAT, DOUBLE, and DECIMAL (and any synonyms); you should expect support for it to be removed in a future version of MySQL. Consider using a simple CHECK constraint instead for such columns.
TINYINT[(M)] [UNSIGNED] [ZEROFILL]
A very small integer. The signed range is -128 to 127. The unsigned range is 0 to 255.
SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
A small integer. The signed range is -32768 to 32767. The unsigned range is 0 to 65535.
MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
A medium-sized integer. The signed range is -8388608 to 8388607. The unsigned range is 0 to 16777215.
INT[(M)] [UNSIGNED] [ZEROFILL]
A normal-size integer. The signed range is -2147483648 to 2147483647. The unsigned range is 0 to 4294967295.
INTEGER[(M)] [UNSIGNED] [ZEROFILL]
This type is a synonym for INT.
BIGINT[(M)] [UNSIGNED] [ZEROFILL]
A large integer. The signed range is -9223372036854775808 to 9223372036854775807. The unsigned range is 0 to 18446744073709551615.
First impl unsigned [tinyint~int], then impl unsigned int64_t.
Tracking SubTask List:
Check List:
OUT_OF_RANGE
when doing calculation && truncate value.TianmuAttr
supports unsignedField2VC
need to support unsigned.ConstColumn
supports that getting unsigned value, if result correct.>,<,=,>=,<=
The text was updated successfully, but these errors were encountered: