|
30 | 30 | 2|340282366920938463463374607431768211455 |
31 | 31 | 3|340282366920938463463374607431768211455 |
32 | 32 |
|
| 33 | +-CASE UInt128PK |
| 34 | +-STATEMENT CREATE NODE TABLE tab(uint128key UINT128 PRIMARY KEY, value UINT128); |
| 35 | +---- ok |
| 36 | +-STATEMENT CREATE (n1:tab {uint128key: 0, value: 170141183460469231731687303715884105728}) RETURN n1.*; |
| 37 | +---- 1 |
| 38 | +0|170141183460469231731687303715884105728 |
| 39 | +-STATEMENT CREATE (n2:tab {uint128key: 170141183460469231731687303715884105737, value: 1869}) RETURN n2.*; |
| 40 | +---- 1 |
| 41 | +170141183460469231731687303715884105737|1869 |
| 42 | +-STATEMENT CREATE (n3:tab {uint128key: -1, value: 12}) RETURN n3.*; |
| 43 | +---- error |
| 44 | +Overflow exception: Cannot cast negative value to UINT128. |
| 45 | +-STATEMENT CREATE (n4:tab {uint128key: 340282366920938463463374607431768211456, value: 0}) RETURN n4.*; |
| 46 | +---- error |
| 47 | +Conversion exception: Cast failed. Could not convert "340282366920938463463374607431768211456" to UINT128. |
| 48 | +-STATEMENT CREATE (n5:tab {uint128key: 0, value: 1}) RETURN n5.*; |
| 49 | +---- error |
| 50 | +Runtime exception: Found duplicated primary key value 0, which violates the uniqueness constraint of the primary key column. |
| 51 | +-STATEMENT CREATE (n6:tab {uint128key: 170141183460469231731687303715884105737, value: 1869}) RETURN n6.*; |
| 52 | +---- error |
| 53 | +Runtime exception: Found duplicated primary key value 170141183460469231731687303715884105737, which violates the uniqueness constraint of the primary key column. |
| 54 | +-STATEMENT CREATE (n7:tab {uint128key: 2025, value: NULL}) RETURN n7.*; |
| 55 | +---- 1 |
| 56 | +2025| |
| 57 | +-STATEMENT CREATE (n8:tab {uint128key: NULL, value: 1}) RETURN n8.*; |
| 58 | +---- error |
| 59 | +Runtime exception: Found NULL, which violates the non-null constraint of the primary key column. |
| 60 | + |
| 61 | +-CASE UInt128PKMatch |
| 62 | +-STATEMENT CREATE NODE TABLE tab(uint128key UINT128 PRIMARY KEY, value UINT128); |
| 63 | +---- ok |
| 64 | +-STATEMENT CREATE (n1:tab {uint128key: 0, value: 0}); |
| 65 | +---- ok |
| 66 | +-STATEMENT CREATE (n2:tab {uint128key: 11111, value: 1}); |
| 67 | +---- ok |
| 68 | +-STATEMENT CREATE (n3:tab {uint128key: 22222, value: 2}); |
| 69 | +---- ok |
| 70 | +-STATEMENT MATCH (z:tab {uint128key: 11111}) RETURN z.*; |
| 71 | +---- 1 |
| 72 | +11111|1 |
| 73 | +-STATEMENT MATCH (z:tab) WHERE z.uint128key = 22222 RETURN z.value; |
| 74 | +---- 1 |
| 75 | +2 |
| 76 | +-STATEMENT CREATE (n4:tab {uint128key: 15000, value: 3}); |
| 77 | +---- ok |
| 78 | +-STATEMENT MATCH (z:tab) WHERE z.uint128key > 10000 AND z.uint128key < 20000 RETURN z.*; |
| 79 | +---- 2 |
| 80 | +11111|1 |
| 81 | +15000|3 |
| 82 | +-STATEMENT MATCH (z:tab) WHERE z.uint128key = 99999 RETURN z.*; |
| 83 | +---- 0 |
| 84 | + |
| 85 | +-CASE UInt128PKMatchAndDelete |
| 86 | +-STATEMENT CREATE NODE TABLE tab(uint128key UINT128 PRIMARY KEY, value UINT128); |
| 87 | +---- ok |
| 88 | +-STATEMENT CREATE (n1:tab {uint128key: 0, value: 0}); |
| 89 | +---- ok |
| 90 | +-STATEMENT CREATE (n2:tab {uint128key: 11111, value: 1}); |
| 91 | +---- ok |
| 92 | +-STATEMENT CREATE (n3:tab {uint128key: 22222, value: 2}); |
| 93 | +---- ok |
| 94 | +-STATEMENT CREATE (n4:tab {uint128key: 15000, value: 3}); |
| 95 | +---- ok |
| 96 | +-STATEMENT MATCH (z:tab) RETURN z.*; |
| 97 | +---- 4 |
| 98 | +0|0 |
| 99 | +11111|1 |
| 100 | +22222|2 |
| 101 | +15000|3 |
| 102 | +-STATEMENT MATCH (z:tab {uint128key: 15000}) DELETE z; |
| 103 | +---- ok |
| 104 | +-STATEMENT MATCH (z:tab) RETURN z.*; |
| 105 | +---- 3 |
| 106 | +0|0 |
| 107 | +11111|1 |
| 108 | +22222|2 |
| 109 | +-STATEMENT CREATE (n4:tab {uint128key: 15000, value: 9876543210}); |
| 110 | +---- ok |
| 111 | +-STATEMENT MATCH (z:tab) RETURN z.*; |
| 112 | +---- 4 |
| 113 | +0|0 |
| 114 | +11111|1 |
| 115 | +22222|2 |
| 116 | +15000|9876543210 |
| 117 | +-STATEMENT MATCH (z:tab {uint128key: 12}) DELETE z; |
| 118 | +---- ok |
| 119 | +-STATEMENT MATCH (z:tab) RETURN z.*; |
| 120 | +---- 4 |
| 121 | +0|0 |
| 122 | +11111|1 |
| 123 | +22222|2 |
| 124 | +15000|9876543210 |
| 125 | +-STATEMENT MATCH (z:tab) WHERE z.uint128key >= 0 DELETE z; |
| 126 | +---- 0 |
| 127 | +-STATEMENT MATCH (z:tab) RETURN z.*; |
| 128 | +---- 0 |
| 129 | + |
| 130 | +-CASE Set |
| 131 | +-STATEMENT CREATE NODE TABLE tab(uint128key UINT128 PRIMARY KEY, value1 UINT128, value2 UINT128); |
| 132 | +---- ok |
| 133 | +-STATEMENT CREATE (n1:tab {uint128key: 1024, value1: 2048, value2: 4096}) RETURN n1.*; |
| 134 | +---- 1 |
| 135 | +1024|2048|4096 |
| 136 | +-STATEMENT MATCH (z:tab {uint128key: 1024}) SET z.value1 = 9999999 RETURN z.*; |
| 137 | +---- 1 |
| 138 | +1024|9999999|4096 |
| 139 | +-STATEMENT MATCH (z:tab {uint128key: 1024}) SET z.value2 = z.value1 + to_uint128(1) RETURN z.*; |
| 140 | +---- 1 |
| 141 | +1024|9999999|10000000 |
| 142 | +-STATEMENT MATCH (z:tab {uint128key: 1024}) SET z.uint128key = 1234567; |
| 143 | +---- error |
| 144 | +Binder exception: Cannot set property uint128key in table tab because it is used as primary key. Try delete and then insert. |
| 145 | + |
33 | 146 | -CASE Overflow |
34 | 147 | -STATEMENT CREATE NODE TABLE tab(intkey INT64 PRIMARY KEY, value UINT128); |
35 | 148 | ---- ok |
|
0 commit comments