Как переименовать поле, используемое в качестве внешнего ключа в MySQL?

В настоящее время я делаю проект по разработке проекта автоматизации слова для своей компании, и я использую DocX . Очень простой и простой API для работы. Подход, который я использую, всегда, когда мне нужно напрямую работать с XML, этот API имеет свойство «xml» в классе Paragraph, которое дает вам доступ к основному xml direclty, чтобы я мог работать с ним. Наилучшая часть - это не разбить xml и не повредить результирующий документ. Надеюсь, что это поможет!

Пример кода с использованием DocX ..

 XNamespace ns = "http://schemas.openxmlformats.org/wordprocessingml/2006/main";
    using(DocX doc = DocX.Load(@"c:\temp\yourdoc.docx"))
    {
         foreach( Paragraph para in doc.Paragraphs )
         {
             if(para.Xml.ToString().Contains("w:Bookmark"))
             {
                 if(para.Xml.Element(ns + "BookmarkStart").Attribute("Name").Value == "yourbookmarkname")
                  {
                          // you got to your bookmark, if you want to change the text..then 
                          para.Xml.Elements(ns + "t").FirstOrDefault().SetValue("Text to replace..");
                  }
             }
         }
    }

Альтернативный API исключительно для работы с закладками - это .. http://simpleooxml.codeplex.com/

Пример того, как удалять текст из закладки на сайт в bookmarkend с помощью этого API ..

 MemoryStream stream = DocumentReader.Copy(string.Format("{0}\\template.docx", TestContext.TestDeploymentDir));
 WordprocessingDocument doc = WordprocessingDocument.Open(stream, true);
 MainDocumentPart mainPart = doc.MainDocumentPart;

 DocumentWriter writer = new DocumentWriter(mainPart);

 //Simply Clears all text between bookmarkstart and end
 writer.PasteText("", "YourBookMarkName");


 //Save to the memory stream, and then to a file
 writer.Save();

 DocumentWriter.StreamToFile(string.Format("{0}\\templatetest.docx", GetOutputFolder()), stream);

Загрузка документа Word в разные API из потока памяти.

//Loading a document file into memorystream using SimpleOOXML API
MemoryStream stream = DocumentReader.Copy(@"c\template.docx");

//Opening it from the memory stream as OpenXML document
WordprocessingDocument doc = WordprocessingDocument.Open(stream, true);

//Opening it as DocX document for working with DocX Api
DocX document = DocX.Load(stream); 

1
задан NicoESIEA 18 March 2019 в 00:03
поделиться

1 ответ

Вы можете выполнить следующий код и внести необходимые изменения в соответствии с именами столбцов и таблиц.

ALTER TABLE table_name
DROP FOREIGN KEY fk_constraint_name;

ALTER TABLE table_name
CHANGE fk_column_name new_fk_column_name datatype;

ALTER TABLE table_name
ADD FOREIGN KEY fk_constraint_name
REFERENCES parent_table_name(pk_column_name_id);

Дайте мне знать, как это работает для вас.

0
ответ дан James 18 March 2019 в 00:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: