Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
118a0c7f
Commit
118a0c7f
authored
Dec 12, 2006
by
gluh@mysql.com/gluh.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
parents
94eb027f
4f0c9c43
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
113 additions
and
73 deletions
+113
-73
mysql-test/r/gis.result
mysql-test/r/gis.result
+16
-10
mysql-test/std_data/bad_gis_data.dat
mysql-test/std_data/bad_gis_data.dat
+1
-0
mysql-test/t/gis.test
mysql-test/t/gis.test
+14
-8
sql/field.cc
sql/field.cc
+4
-2
sql/field.h
sql/field.h
+65
-52
sql/sql_load.cc
sql/sql_load.cc
+13
-1
No files found.
mysql-test/r/gis.result
View file @
118a0c7f
...
@@ -673,6 +673,22 @@ POINT(10 10)
...
@@ -673,6 +673,22 @@ POINT(10 10)
select (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440))));
select (asWKT(geomfromwkb((0x010100000000000000000024400000000000002440))));
(asWKT(geomfromwkb((0x010100000000000000000024400000000000002440))))
(asWKT(geomfromwkb((0x010100000000000000000024400000000000002440))))
POINT(10 10)
POINT(10 10)
create table t1 (g GEOMETRY);
select * from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t1 t1 g g 255 4294967295 0 Y 144 0 63
g
select asbinary(g) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def asbinary(g) 252 8192 0 Y 128 0 63
asbinary(g)
drop table t1;
create table t1 (a TEXT, b GEOMETRY NOT NULL, SPATIAL KEY(b));
alter table t1 disable keys;
load data infile '../std_data_ln/bad_gis_data.dat' into table t1;
ERROR 22004: Column was set to data type implicit default; NULL supplied for NOT NULL column 'b' at row 1
alter table t1 enable keys;
drop table t1;
create table t1 (s1 geometry not null,s2 char(100));
create table t1 (s1 geometry not null,s2 char(100));
create trigger t1_bu before update on t1 for each row set new.s1 = null;
create trigger t1_bu before update on t1 for each row set new.s1 = null;
insert into t1 values (null,null);
insert into t1 values (null,null);
...
@@ -696,16 +712,6 @@ alter table t1 add primary key pti(pt);
...
@@ -696,16 +712,6 @@ alter table t1 add primary key pti(pt);
ERROR 42000: BLOB/TEXT column 'pt' used in key specification without a key length
ERROR 42000: BLOB/TEXT column 'pt' used in key specification without a key length
alter table t1 add primary key pti(pt(20));
alter table t1 add primary key pti(pt(20));
drop table t1;
drop table t1;
create table t1 (g GEOMETRY);
select * from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t1 t1 g g 255 4294967295 0 Y 144 0 63
g
select asbinary(g) from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def asbinary(g) 252 8192 0 Y 128 0 63
asbinary(g)
drop table t1;
create table t1 select GeomFromText('point(1 1)');
create table t1 select GeomFromText('point(1 1)');
desc t1;
desc t1;
Field Type Null Key Default Extra
Field Type Null Key Default Extra
...
...
mysql-test/std_data/bad_gis_data.dat
0 → 100644
View file @
118a0c7f
foo
mysql-test/t/gis.test
View file @
118a0c7f
...
@@ -375,6 +375,20 @@ drop table t1;
...
@@ -375,6 +375,20 @@ drop table t1;
select
(
asWKT
(
geomfromwkb
((
0x000000000140240000000000004024000000000000
))));
select
(
asWKT
(
geomfromwkb
((
0x000000000140240000000000004024000000000000
))));
select
(
asWKT
(
geomfromwkb
((
0x010100000000000000000024400000000000002440
))));
select
(
asWKT
(
geomfromwkb
((
0x010100000000000000000024400000000000002440
))));
--
enable_metadata
create
table
t1
(
g
GEOMETRY
);
select
*
from
t1
;
select
asbinary
(
g
)
from
t1
;
--
disable_metadata
drop
table
t1
;
create
table
t1
(
a
TEXT
,
b
GEOMETRY
NOT
NULL
,
SPATIAL
KEY
(
b
));
alter
table
t1
disable
keys
;
--
error
1263
load
data
infile
'../std_data_ln/bad_gis_data.dat'
into
table
t1
;
alter
table
t1
enable
keys
;
drop
table
t1
;
# End of 4.1 tests
# End of 4.1 tests
#
#
...
@@ -410,15 +424,7 @@ alter table t1 add primary key pti(pt);
...
@@ -410,15 +424,7 @@ alter table t1 add primary key pti(pt);
alter
table
t1
add
primary
key
pti
(
pt
(
20
));
alter
table
t1
add
primary
key
pti
(
pt
(
20
));
drop
table
t1
;
drop
table
t1
;
--
enable_metadata
create
table
t1
(
g
GEOMETRY
);
select
*
from
t1
;
select
asbinary
(
g
)
from
t1
;
--
disable_metadata
drop
table
t1
;
create
table
t1
select
GeomFromText
(
'point(1 1)'
);
create
table
t1
select
GeomFromText
(
'point(1 1)'
);
desc
t1
;
desc
t1
;
drop
table
t1
;
drop
table
t1
;
sql/field.cc
View file @
118a0c7f
...
@@ -1569,10 +1569,11 @@ void Field_null::sql_type(String &res) const
...
@@ -1569,10 +1569,11 @@ void Field_null::sql_type(String &res) const
This is an number stored as a pre-space (or pre-zero) string
This is an number stored as a pre-space (or pre-zero) string
****************************************************************************/
****************************************************************************/
void
int
Field_decimal
::
reset
(
void
)
Field_decimal
::
reset
(
void
)
{
{
Field_decimal
::
store
(
STRING_WITH_LEN
(
"0"
),
&
my_charset_bin
);
Field_decimal
::
store
(
STRING_WITH_LEN
(
"0"
),
&
my_charset_bin
);
return
0
;
}
}
void
Field_decimal
::
overflow
(
bool
negative
)
void
Field_decimal
::
overflow
(
bool
negative
)
...
@@ -2217,9 +2218,10 @@ Field_new_decimal::Field_new_decimal(uint32 len_arg,
...
@@ -2217,9 +2218,10 @@ Field_new_decimal::Field_new_decimal(uint32 len_arg,
}
}
void
Field_new_decimal
::
reset
(
void
)
int
Field_new_decimal
::
reset
(
void
)
{
{
store_value
(
&
decimal_zero
);
store_value
(
&
decimal_zero
);
return
0
;
}
}
...
...
sql/field.h
View file @
118a0c7f
This diff is collapsed.
Click to expand it.
sql/sql_load.cc
View file @
118a0c7f
...
@@ -696,7 +696,12 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list,
...
@@ -696,7 +696,12 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list,
if
(
item
->
type
()
==
Item
::
FIELD_ITEM
)
if
(
item
->
type
()
==
Item
::
FIELD_ITEM
)
{
{
Field
*
field
=
((
Item_field
*
)
item
)
->
field
;
Field
*
field
=
((
Item_field
*
)
item
)
->
field
;
field
->
reset
();
if
(
field
->
reset
())
{
my_error
(
ER_WARN_NULL_TO_NOTNULL
,
MYF
(
0
),
field
->
field_name
,
thd
->
row_count
);
DBUG_RETURN
(
1
);
}
field
->
set_null
();
field
->
set_null
();
if
(
field
==
table
->
next_number_field
)
if
(
field
==
table
->
next_number_field
)
table
->
auto_increment_field_not_null
=
TRUE
;
table
->
auto_increment_field_not_null
=
TRUE
;
...
@@ -745,6 +750,13 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list,
...
@@ -745,6 +750,13 @@ read_sep_field(THD *thd, COPY_INFO &info, TABLE_LIST *table_list,
{
{
if
(
item
->
type
()
==
Item
::
FIELD_ITEM
)
if
(
item
->
type
()
==
Item
::
FIELD_ITEM
)
{
{
Field
*
field
=
((
Item_field
*
)
item
)
->
field
;
if
(
field
->
reset
())
{
my_error
(
ER_WARN_NULL_TO_NOTNULL
,
MYF
(
0
),
field
->
field_name
,
thd
->
row_count
);
DBUG_RETURN
(
1
);
}
/*
/*
QQ: We probably should not throw warning for each field.
QQ: We probably should not throw warning for each field.
But how about intention to always have the same number
But how about intention to always have the same number
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment