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
f069fcdb
Commit
f069fcdb
authored
Aug 02, 2006
by
holyfoot/hf@mysql.com/deer.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merge bk@192.168.21.1:mysql-5.0-kt
into mysql.com:/home/hf/work/mysql-5.0.14807
parents
a35d3241
4b48b356
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
47 additions
and
3 deletions
+47
-3
mysql-test/r/gis.result
mysql-test/r/gis.result
+7
-2
mysql-test/t/gis.test
mysql-test/t/gis.test
+7
-1
sql/item_geofunc.cc
sql/item_geofunc.cc
+28
-0
sql/item_geofunc.h
sql/item_geofunc.h
+5
-0
No files found.
mysql-test/r/gis.result
View file @
f069fcdb
...
...
@@ -574,11 +574,11 @@ INSERT INTO t1 VALUES(GeomFromText('POINT(367894677 368542487)'));
INSERT INTO t1 VALUES(GeomFromText('POINT(580848489 219587743)'));
INSERT INTO t1 VALUES(GeomFromText('POINT(11247614 782797569)'));
drop table t1;
create table t1 select
POINT(1,3
);
create table t1 select
GeomFromWKB(POINT(1,3)
);
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
`
POINT(1,3)` longblob NOT NULL
`
GeomFromWKB(POINT(1,3))` geometry NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
CREATE TABLE `t1` (`object_id` bigint(20) unsigned NOT NULL default '0', `geo`
...
...
@@ -704,3 +704,8 @@ Catalog Database Table Table_alias Column Column_alias Type Length Max length Is
def asbinary(g) 252 8192 0 Y 128 0 63
asbinary(g)
drop table t1;
create table t1 select GeomFromText('point(1 1)');
desc t1;
Field Type Null Key Default Extra
GeomFromText('point(1 1)') geometry NO
drop table t1;
mysql-test/t/gis.test
View file @
f069fcdb
...
...
@@ -281,7 +281,7 @@ INSERT INTO t1 VALUES(GeomFromText('POINT(580848489 219587743)'));
INSERT
INTO
t1
VALUES
(
GeomFromText
(
'POINT(11247614 782797569)'
));
drop
table
t1
;
create
table
t1
select
POINT
(
1
,
3
);
create
table
t1
select
GeomFromWKB
(
POINT
(
1
,
3
)
);
show
create
table
t1
;
drop
table
t1
;
...
...
@@ -416,3 +416,9 @@ select * from t1;
select
asbinary
(
g
)
from
t1
;
--
disable_metadata
drop
table
t1
;
create
table
t1
select
GeomFromText
(
'point(1 1)'
);
desc
t1
;
drop
table
t1
;
sql/item_geofunc.cc
View file @
f069fcdb
...
...
@@ -25,6 +25,12 @@
#ifdef HAVE_SPATIAL
#include <m_ctype.h>
Field
*
Item_geometry_func
::
tmp_table_field
(
TABLE
*
t_arg
)
{
return
new
Field_geom
(
max_length
,
maybe_null
,
name
,
t_arg
,
(
Field
::
geometry_type
)
get_geometry_type
());
}
void
Item_geometry_func
::
fix_length_and_dec
()
{
collation
.
set
(
&
my_charset_bin
);
...
...
@@ -32,6 +38,10 @@ void Item_geometry_func::fix_length_and_dec()
max_length
=
MAX_BLOB_WIDTH
;
}
int
Item_geometry_func
::
get_geometry_type
()
const
{
return
(
int
)
Field
::
GEOM_GEOMETRY
;
}
String
*
Item_func_geometry_from_text
::
val_str
(
String
*
str
)
{
...
...
@@ -152,6 +162,12 @@ String *Item_func_geometry_type::val_str(String *str)
}
int
Item_func_envelope
::
get_geometry_type
()
const
{
return
(
int
)
Field
::
GEOM_POLYGON
;
}
String
*
Item_func_envelope
::
val_str
(
String
*
str
)
{
DBUG_ASSERT
(
fixed
==
1
);
...
...
@@ -176,6 +192,12 @@ String *Item_func_envelope::val_str(String *str)
}
int
Item_func_centroid
::
get_geometry_type
()
const
{
return
(
int
)
Field
::
GEOM_POINT
;
}
String
*
Item_func_centroid
::
val_str
(
String
*
str
)
{
DBUG_ASSERT
(
fixed
==
1
);
...
...
@@ -310,6 +332,12 @@ err:
*/
int
Item_func_point
::
get_geometry_type
()
const
{
return
(
int
)
Field
::
GEOM_POINT
;
}
String
*
Item_func_point
::
val_str
(
String
*
str
)
{
DBUG_ASSERT
(
fixed
==
1
);
...
...
sql/item_geofunc.h
View file @
f069fcdb
...
...
@@ -33,6 +33,8 @@ public:
Item_geometry_func
(
List
<
Item
>
&
list
)
:
Item_str_func
(
list
)
{}
void
fix_length_and_dec
();
enum_field_types
field_type
()
const
{
return
MYSQL_TYPE_GEOMETRY
;
}
Field
*
tmp_table_field
(
TABLE
*
t_arg
);
virtual
int
get_geometry_type
()
const
;
};
class
Item_func_geometry_from_text
:
public
Item_geometry_func
...
...
@@ -89,6 +91,7 @@ public:
Item_func_centroid
(
Item
*
a
)
:
Item_geometry_func
(
a
)
{}
const
char
*
func_name
()
const
{
return
"centroid"
;
}
String
*
val_str
(
String
*
);
int
get_geometry_type
()
const
;
};
class
Item_func_envelope
:
public
Item_geometry_func
...
...
@@ -97,6 +100,7 @@ public:
Item_func_envelope
(
Item
*
a
)
:
Item_geometry_func
(
a
)
{}
const
char
*
func_name
()
const
{
return
"envelope"
;
}
String
*
val_str
(
String
*
);
int
get_geometry_type
()
const
;
};
class
Item_func_point
:
public
Item_geometry_func
...
...
@@ -106,6 +110,7 @@ public:
Item_func_point
(
Item
*
a
,
Item
*
b
,
Item
*
srid
)
:
Item_geometry_func
(
a
,
b
,
srid
)
{}
const
char
*
func_name
()
const
{
return
"point"
;
}
String
*
val_str
(
String
*
);
int
get_geometry_type
()
const
;
};
class
Item_func_spatial_decomp
:
public
Item_geometry_func
...
...
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