LOAD XML LOCAL INFILE 'C:/modified.xml'
INTO TABLE wp_posts ROWS IDENTIFIED BY '<Course>'
SET ID = ReferenceNo,
post_title = CourseName,
post_type = 'course';
这是我的xml文件的一个片段:
<?xml version="1.0" encoding="utf-8"?>
<Course>
<ReferenceNo>64055</ReferenceNo>
<ProviderCode>CO</ProviderCode>
<ProviderName>Training Centre</ProviderName>
<CourseID>CO123</CourseID>
<CourseName>IT Maintenance - Short Course</CourseName>
<CourseTypeID>1</CourseTypeID>
<CourseTypeName>1</CourseTypeName>
<LocationCode>70203</LocationCode>
<LocationName>Address of Training Centre</LocationName>
<StartDate>2015.12.07</StartDate>
<FinishDate>2016.03.04</FinishDate>
</Course>
load xml
文档没有很好地解释列列表和set
子句是如何应用的。它简单地说:
以下子句对加载XML
的工作方式与对加载数据
的工作方式基本相同:
>
低优先级
或并发
本地
替换
或忽略
字符集
LOAD DATA INFILE 'persondata.txt' INTO TABLE persondata (col1,col2,...);
如果输入文件中字段的顺序与表中列的顺序不同,则还必须指定列列表。否则,MySQL无法告诉如何将输入字段与表列匹配。
这如何转换为loadxml
并不明显,因为(与分隔文件不同)字段在整个XML文档中不需要以一致的顺序出现。此外,即使字段的顺序一致,简单地指定要加载这些字段的列的各自名称也是不起作用的。
文件接着说:
LOAD XML LOCAL INFILE 'C:/modified.xml'
INTO TABLE wp_posts ROWS IDENTIFIED BY '<Course>'
(@ReferenceNo, @z, @z, @z, @CourseName)
SET ID = @ReferenceNo,
post_title = @CourseName,
post_type = 'course';
CREATE TEMPORARY TABLE tmp_courses_xml (
ReferenceNo INT UNSIGNED,
ProviderCode CHAR(2),
ProviderName VARCHAR(255),
CourseID VARCHAR(15),
CourseName VARCHAR(255),
CourseTypeID INT UNSIGNED,
CourseTypeName VARCHAR(255),
LocationCode INT UNSIGNED,
LocationName VARCHAR(255),
StartDate CHAR(10),
FinishDate CHAR(10)
) ENGINE=MEMORY;
LOAD XML LOCAL INFILE 'C:/modified.xml'
INTO TABLE tmp_courses_xml
ROWS IDENTIFIED BY '<Course>';
INSERT INTO wp_posts
(ID, post_title, post_type)
SELECT ReferenceNo, CourseName, 'course' FROM tmp_courses_xml;
DROP TEMPORARY TABLE tmp_courses_xml;
为什么查询给出这个错误: #1054-“WHERE子句”中得列“NOPL”未知?
有人能修好它吗?
此函数有问题。它应该返回使用下面的sql调用收集的数据的json字符串。问题是,当通过服务器访问页面时(例如-localhost/app/API/states/Alabama/1/10.json),我得到一个错误代码“500”。奇怪的是,数据在使用.json和不使用appending.json的情况下按预期显示。据我所知,控制器和模型设置得很好,但错误代码仍然存在: {“code”:500,“ur
我试图在“Categoria”表和“Noticia”表之间创建一个多对多关系,然后使用工厂生成数据,但我得到了那个错误。我已经创建了一个透视表,但我不知道出了什么问题,我对这个很陌生。。。。 Noticia模型: 名称空间应用程序; 使用Illumb\Database\Elount\Model; 类Noticia扩展模型{ } 类别模型: 支点迁移: 诺西西亚移民 类别迁移: Noticia工厂:
我试图在WHERE子句中将一个列从外部查询传递给内部查询,如下所示,MySQL不喜欢这样做。我不确定如何重写这个查询使其工作。 我很想知道如何让这个工作或重写它,使它将工作。我使用的是MySQL5.6,所以我没有可用的窗口函数,否则我认为可以工作。
基本上,我试图制作一个简单的促销页面,我得到的错误是SQL错误:1054,SQLSTATE:42S22错误是“字段列表”中的未知列“promotion0_.promot_type_id” 下面是模型类 以下是错误,SQL错误:1054,SQLSTATE:42S22,“字段列表”中的未知列“Promotion0_.Promot_Type_ID”错误34768---[nio-8080-exec-3]O