@@ -10110,6 +10110,72 @@ where
1011010110 },
1011110111 },
1011210112 },
10113+ {
10114+ Name : "decimals with foreign keys" ,
10115+ Dialect : "mysql" ,
10116+ SetUpScript : []string {
10117+ "create table parent (d decimal(4, 2) primary key);" ,
10118+ "insert into parent values (1.23), (45.67), (78.9);" ,
10119+ },
10120+ Assertions : []ScriptTestAssertion {
10121+ {
10122+ Query : "create table child_dec_4_2 (d decimal(4,2), foreign key (d) references parent (d));" ,
10123+ Expected : []sql.Row {
10124+ {types .NewOkResult (0 )},
10125+ },
10126+ },
10127+ {
10128+ Query : "insert into child_dec_4_2 values (1.23), (45.67), (NULL);" ,
10129+ Expected : []sql.Row {
10130+ {types .NewOkResult (3 )},
10131+ },
10132+ },
10133+ {
10134+ Query : "insert into child_dec_4_2 values (1.229999), (45.6711111), (78.90);" ,
10135+ Expected : []sql.Row {
10136+ {types .NewOkResult (3 )},
10137+ },
10138+ },
10139+
10140+ {
10141+ Skip : true ,
10142+ Query : "create table child_dec_4_1 (d decimal(4,1), foreign key (d) references parent (d));" ,
10143+ Expected : []sql.Row {
10144+ {types .NewOkResult (0 )},
10145+ },
10146+ },
10147+ {
10148+ Skip : true ,
10149+ Query : "insert into child_dec_4_1 values (78.9);" ,
10150+ ExpectedErr : sql .ErrForeignKeyParentViolation ,
10151+ },
10152+
10153+ {
10154+ Skip : true ,
10155+ Query : "create table child_dec_3_2 (d decimal(3,2), foreign key (d) references parent (d));" ,
10156+ Expected : []sql.Row {
10157+ {types .NewOkResult (0 )},
10158+ },
10159+ },
10160+ {
10161+ Skip : true ,
10162+ Query : "insert into child_dec_3_2 values (1.23);" ,
10163+ ExpectedErr : sql .ErrForeignKeyParentViolation ,
10164+ },
10165+ {
10166+ Skip : true ,
10167+ Query : "create table child_dec_65_30 (d decimal(65,30), foreign key (d) references parent (d));" ,
10168+ Expected : []sql.Row {
10169+ {types .NewOkResult (0 )},
10170+ },
10171+ },
10172+ {
10173+ Skip : true ,
10174+ Query : "insert into child_dec_65_30 values (1.23);" ,
10175+ ExpectedErr : sql .ErrForeignKeyParentViolation ,
10176+ },
10177+ },
10178+ },
1011310179
1011410180 // Date Tests
1011510181 {
0 commit comments