mysql 相关问题

MySQL是一个免费的开源关系数据库管理系统(RDBMS),它使用结构化查询语言(SQL)。不要将此标记用于其他数据库,如SQL Server,SQLite等。这些是不同的DB,它们都使用SQL来管理数据。

如何选择比最长的短 x 个字符的行

我有一项学习作业,我已经把头撞在墙上至少一天了。 我对此完全陌生,只是学习基础知识。 这是我的任务: 使用 union 来组合这些 q...

回答 1 投票 0

Sequelize 如何比较查询中日期的年份

我正在尝试进行以下查询: SELECT * FROM TABLEA AS A WHERE YEAR(A.dateField)='2016' 我如何以续集风格执行上面的查询? 表A.findAll({ 在哪里:{}//???? } 谢谢!

回答 3 投票 0

字符串化的 JSON 数据不会插入到 mySQL 中(已验证的 json 格式)

我无法将 JSON 字符串插入 mySQL 表中。 创建表注册( id int NOT NULL AUTO_INCRMENT, 名称 nvarchar(128) NOT NULL, 面板 JSON NOT NULL, 主键(id...

回答 1 投票 0

有没有办法在postgres中设置非NULL列的默认值?

在 PostgreSQL 中,当列被标记为 NOT NULL 并且在插入期间没有为其提供值时,会抛出错误。然而,在MySQL中,如果没有提供值,则默认值是根据...

回答 1 投票 0

为什么我无法在表member_details和committee_member上创建MySQL关系[重复]

我有如图所示的关系,但是当我从 Member_details 更新 member_name 时,committee_memba 等其他表不会更新,在创建关系之前,我运行了

回答 1 投票 0

Prisma ORM 如何通过 GREATEST() 订购

我有一个包含两列updated_at和children_updated_at的数据库表,我想首先基于SQL函数GREATEST(updated_at,children_update...

回答 1 投票 0

为什么 PDO 将我的 bool(false) 参数转换为 string('')?

我在安装新的 MariaDB 10.5.8 时遇到问题。设置了 STRICT_TRANS_TABLES,当我尝试使用 $sql 时: '插入测试(标志)值(?)' (其中 flag 定义为tinyint(1))和 var_...

回答 4 投票 0

mySQL:如何正确查询?

我在作业中找到了这个,但无法弄清楚,请帮忙。 我有3张桌子: 所有者(id,名称),品种(id,类型),狗(id,ownerid,breedid) 连接: 所有者.id = 狗.所有者 ID AND 品种.id = ...

回答 1 投票 0

MySQL 分组,根据聚合级别给出不同的总结果

我有一个 mysql 表,其中包含多个分类列(日历日、国家/地区、营销渠道等)和几个代表与该类别组合相关的指标的数字列...

回答 1 投票 0

PDO-MySQL:布尔值在准备好的语句绑定上转换为 1 或空字符串

我正在尝试将一些布尔值插入到 JSON 类型列中。 $taskSql = "INSERT INTO 任务 (数据, taskListId) VALUES (JSON_OBJECT('title', :title, 'done', :done), :taskListId)"; $taskStatement...

回答 2 投票 0

将KML导入MySQL

我有这个 KML 文件要插入 MySQL 表中: 我有这个 KML 文件要插入 MySQL 表中: <?xml version="1.0" encoding="utf-8" ?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document id="root_doc"> <Schema name="secc_cpv_e_20111101_01_r_ine" id="secc_cpv_e_20111101_01_r_ine"> <SimpleField name="Name" type="string"></SimpleField> </Schema> <Folder> <name>secc_cpv_e_20111101_01_r_ine</name> <Placemark> <name>5200101001</name> <Style> <LineStyle> <color>ff0000ff</color> </LineStyle> <PolyStyle> <fill>0</fill> </PolyStyle> </Style> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-2.93698273596522,35.2979346176443,0 -2.93697084790041,35.2979326186938,0 -2.93695877204193,35.297933090301,0 -2.93694953435202,35.2979385903615,0 -2.93694137509274,35.2979447898008,0 -2.93692885164904,35.297946595687,0 -2.93691871628878,35.2979409773216,0 -2.93691413103252,35.2979323321398,0 -2.93690399979109,35.2979270789636,0 -2.93689431492369,35.2979220514443,0 -2.93688289797324,35.2979224151838,0 -2.93687516563971,35.2979298005764,0 </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Folder> </Document> </kml> 当我启动PHP将KML插入MySQL时,只获取坐标的开头,不捕获所有数据;在坐标字段中记录 NULL: <?php $dom = new DOMDocument(); $dom->loadXML(file_get_contents('demo.kml')); foreach ($dom->getElementsByTagName('Folder') as $warehouse) { $warehouseName = $warehouse->getElementsByTagName('name')[0]->nodeValue; foreach ($warehouse->getElementsByTagName('Placemark') as $placemark) { $polygons = $placemark->getElementsByTagName('Polygon'); if ($polygons->length > 0) { $coordinates = $polygons[0]->getElementsByTagName('coordinates'); if ($coordinates->length > 0) { $zoneName = $placemark->getElementsByTagName('name')[0]->nodeValue; // $zoneDesc = $placemark->getElementsByTagName('description')[0]->nodeValue; $coordinates = explode("\n", $coordinates[0]->nodeValue); $coordinatesMysql = array(); foreach ($coordinates as $coordinate) { $coordinate = trim($coordinate); if (!empty($coordinate)) { list($lon, $lat, $elevation) = explode(",", trim($coordinate)); $coordinatesMysql[] = "$lat $lon"; } } echo 'insert into demozonas (name,polygon) values ' ."('$zoneName',ST_PolygonFromText('Polygon((" .implode(', ', $coordinatesMysql) ."))'));\n"; } } } } ?> 插入命令的结果是: insert into demozonas (name,polygon) values ('5200101001',ST_PolygonFromText('Polygon((35.2979346176443 -2.93698273596522))'));` 我尝试了另一个 KML 示例并有效,但我看不到我的 KML 文件中的错误在哪里,有人可以帮助我吗? 坐标值似乎是用空格而不是换行符分隔的。 Xpath可以简化代码,并且可以标准化坐标值。 $document = new DOMDocument(); $document->loadXML(getKMLString()); $xpath = new DOMXpath($document); // register prefix for namespace $xpath->registerNamespace('kml', 'http://www.opengis.net/kml/2.2'); $records = []; // iterate placemarks with polygon descendants foreach ($xpath->evaluate('//kml:Folder/kml:Placemark[count(.//kml:Polygon) > 0]') as $placemark) { // fetch the first polygon inside $placemark foreach ($xpath->evaluate('(//kml:Polygon)[1]', $placemark) as $polygon) { // fetch coordinates as string with all whitespaces normalized to single space characters $coordinates = parseCoordinates($xpath->evaluate('normalize-space(.//kml:coordinates)', $polygon)); $records[] = [ // fetch $placemakr name as string 'name' => trim($xpath->evaluate('string(kml:name)', $placemark)), // compile $coordinates array to Polygon((...)) 'polygon' => coordinatesToPolygon($coordinates), 'coordinates' => $coordinates, ]; } } var_dump($records); // parse coordinates into a nested array function parseCoordinates(string $coordinates) { return array_map( function($coordinate) { [$latitude, $longitude] = explode(',', $coordinate); return [$latitude, $longitude]; }, explode(' ', $coordinates) ); } function coordinatesToPolygon(array $coordinates) { return 'Polygon(('.implode( ', ', array_map(fn ($coordinate) => implode(' ', $coordinate), $coordinates) ).'))'; } function getKMLString() { return <<<'XML' <?xml version="1.0" encoding="utf-8" ?> <kml xmlns="http://www.opengis.net/kml/2.2"> <Document id="root_doc"> <Schema name="secc_cpv_e_20111101_01_r_ine" id="secc_cpv_e_20111101_01_r_ine"> <SimpleField name="Name" type="string"></SimpleField> </Schema> <Folder> <name>secc_cpv_e_20111101_01_r_ine</name> <Placemark> <name>5200101001</name> <Style> <LineStyle> <color>ff0000ff</color> </LineStyle> <PolyStyle> <fill>0</fill> </PolyStyle> </Style> <MultiGeometry> <Polygon> <outerBoundaryIs> <LinearRing> <coordinates>-2.93698273596522,35.2979346176443,0 -2.93697084790041,35.2979326186938,0 -2.93695877204193,35.297933090301,0 -2.93694953435202,35.2979385903615,0 -2.93694137509274,35.2979447898008,0 -2.93692885164904,35.297946595687,0 -2.93691871628878,35.2979409773216,0 -2.93691413103252,35.2979323321398,0 -2.93690399979109,35.2979270789636,0 -2.93689431492369,35.2979220514443,0 -2.93688289797324,35.2979224151838,0 -2.93687516563971,35.2979298005764,0 </coordinates> </LinearRing> </outerBoundaryIs> </Polygon> </MultiGeometry> </Placemark> </Folder> </Document> </kml> XML; } 输出: array(1) { [0]=> array(3) { ["name"]=> string(10) "5200101001" ["polygon"]=> string(439) "Polygon((-2.93698273596522 35.2979346176443, -2.93697084790041 35.2979326186938, -2.93695877204193 35.297933090301, -2.93694953435202 35.2979385903615, -2.93694137509274 35.2979447898008, -2.93692885164904 35.297946595687, -2.93691871628878 35.2979409773216, -2.93691413103252 35.2979323321398, -2.93690399979109 35.2979270789636, -2.93689431492369 35.2979220514443, -2.93688289797324 35.2979224151838, -2.93687516563971 35.2979298005764))" ["coordinates"]=> array(12) { [0]=> array(2) { [0]=> string(17) "-2.93698273596522" [1]=> string(16) "35.2979346176443" } [1]=> array(2) { [0]=> string(17) "-2.93697084790041" [1]=> string(16) "35.2979326186938" } [2]=> array(2) { [0]=> string(17) "-2.93695877204193" [1]=> string(15) "35.297933090301" } [3]=> array(2) { [0]=> string(17) "-2.93694953435202" [1]=> string(16) "35.2979385903615" } [4]=> array(2) { [0]=> string(17) "-2.93694137509274" [1]=> string(16) "35.2979447898008" } [5]=> array(2) { [0]=> string(17) "-2.93692885164904" [1]=> string(15) "35.297946595687" } [6]=> array(2) { [0]=> string(17) "-2.93691871628878" [1]=> string(16) "35.2979409773216" } [7]=> array(2) { [0]=> string(17) "-2.93691413103252" [1]=> string(16) "35.2979323321398" } [8]=> array(2) { [0]=> string(17) "-2.93690399979109" [1]=> string(16) "35.2979270789636" } [9]=> array(2) { [0]=> string(17) "-2.93689431492369" [1]=> string(16) "35.2979220514443" } [10]=> array(2) { [0]=> string(17) "-2.93688289797324" [1]=> string(16) "35.2979224151838" } [11]=> array(2) { [0]=> string(17) "-2.93687516563971" [1]=> string(16) "35.2979298005764" } } } }

回答 1 投票 0

错误 2002 (HY000):无法在 Macos 10.13 上通过套接字连接到本地 MySQL 服务器

当我启动 mysql 服务器时,会发生以下情况: 但随后灯变成红色,这意味着 mysql 服务器停止运行。如何让mysql服务器开机后继续运行? ...

回答 1 投票 0

如何让我的MySQL关系更新其他表

我有如图所示的关系,但是当我从 Member_details 更新 member_name 时,committee_memba 等其他表不会更新,在创建关系之前,我运行了

回答 1 投票 0

连接 MySQL 数据库时出错:数据包乱序。获得:1 预期:0

我正在开发一个使用 MySQL 作为数据库的 Next.js 项目。当我运行应用程序时,几次运行后遇到以下错误:“连接到数据库时出错:错误:数据包...

回答 1 投票 0

选择重复值,排除最常用的值

我在 MySQL 中有两个相关的表,看起来像这样: 创建表“标记”( `ID` bigint(20) NOT NULL AUTO_INCRMENT, `SEASONCD` varchar(32), `ITEMCD` varchar(32), `价格类型CD`

回答 1 投票 0

如何解决这个重复行?

我有一个包含两个WITH 子句的查询。第一个“feriados”返回名为“holidays”的表中的行的开始日期和结束日期之间的每一天。假期可能开始和结束...

回答 1 投票 0

对一列求和并将其分组,然后除以另一个表中的字段

我有两张桌子,一张看起来像这样: 另一个有各国的人口: 我想按国家/地区汇总收入(我知道如何执行这部分,例如选择总和(收入)、国家/地区...

回答 1 投票 0

如何从单个项目以编程方式与 MySQL 5 数据库和 MySQL 8 数据库交互?

我的目标是定期在两个数据库之间同步数据。一个是运行 MySQL 8 的“新”数据库,另一个是尚未完全退役的“旧”数据库......

回答 1 投票 0

将 phpMyAdmin 中的 MySQL 表分组到文件夹中

所以是的,不是问如何使用 group by...而是对我不断增长的数据库中的许多表进行排序。 是否可以将 10 个左右的表放入项目文件夹中,以便更容易找到

回答 1 投票 0

如何在 Ubuntu 上为 MySql 设置 Utf-8?

我有下一张桌子: mysql> 显示类似“char%”的变量; +--------------------------------------+---------------------- ------+ |变量名 |价值| +------------------...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.