可以使用字符串varchar,然后取出数据之后将字符串转化为double类型或float类型
可以存储这些经/纬度数据,如波纹管 -
$arr = array("13.692941, 100.750723",
"13.70649,100.75405999999998",
"13.71334,100.75428999999997",
"13.72268,100.74638000000004")
// serialize data before save to database, you should deserialized that when you will use this data after query.
$serializedArr = serialize($arr)
insert into geom (g) values ("{$serializedArr}")
用mysqldump命令,该命令在mysql的bin安装目录下.打开cmd,cd到mysql的bin目录.然后执行:
mysqldump
-uroot
-p密码
数据库>存储位置,
如"mysqldump
-root
-p123456
mydatabase
>d:\mysql.sql"
注意p和密码之间不能有空格..
如何恢复?进入mysql命令提示(mysql
-u
root
-p123456),选择数据库(use
mydatabase)还原数据库(source
d:\mysql.sql),完成.可以用(show
tables)查看是否和你导出的一致.
图片插入到数据库不是个好方法,如果你确实要存储图片到数据库的话,修改你的sql语句,不可以直接插入的。例如:INSERT into person(p_id,p_name,p_sex,p_age) value("asdsadssdsadfff","addsdsa","dddd",113)
update person set p_image = LOAD_FILE('D:\incident1.jpg') where p_id = "asdsadssdsadfff"
建议把'D:\incident1.jpg'放在mysql的安装目录里面,避免权限问题。。。
解释:sql必须要有对 'D:\incident1.jpg'文件 和相应的路径 读权限,要不也不可以的。 另外检查LOAD_FILE 函数是否被禁用。这个函数是个危险的函数,很容易利用该函数对数据库攻击。
LOAD_FILE(file_name):
读取file_name文件 并以字符串形式返回,使用这个函数时,file_name必须存在于服务器上,而且是完整路径,sql要具有file_name的读取权限,还有该文件的size必须小于数据库 max_allowed_packet的值,否则读取的值为空。如果文件不存在或者sql没有读权限,那么该函数讲返回null
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)